Stateful Widget во флаттере
Я новичок, чтобы трепетать и учился с StatefulWidget
но я не мог четко понять следующий термин
class MyApp extends StatefulWidget
{
@override
_myState createState() => _myState();
}
Я пробовал это
@override
return _myState();
И это мне ясно, но мы используем _myState перед методом createState().
1 ответ
Решение
_myState
здесь на самом деле тип, а не имя переменной.
Эта функция здесь
@override
_myState createState() => _myState();
эквивалентно:
@override
_myState createState() {
return new _myState();
}
где класс _myState
скорее всего определяется так:
class _myState extends State<MyApp> {
...
}
В дротике вам не нужно использовать new
(необязательно) для создания экземпляра объекта.
Однако по соглашению об именах имена классов должны быть в PascalCase, в этом случае _MyState
вместо _myState
что поможет сделать его более читабельным, особенно в вашем случае здесь.