Stateful Widget во флаттере - PullRequest
0 голосов
/ 16 января 2019

Я новичок в трепетании и учился с StatefulWidget, но я не мог четко понять следующий термин

class MyApp extends StatefulWidget
{
  @override
  _myState createState() => _myState();
}  

Я пробовал это

@override return _myState(); И это мне ясно, но мы используем _myState перед createState () метод.

1 Ответ

0 голосов
/ 16 января 2019

_myState здесь на самом деле тип, а не имя переменной.

Эта функция здесь

@override
_myState createState() => _myState();

эквивалентна:

@override
_myState createState() {
    return new _myState();
}

, где класс _myState, вероятно, определен следующим образом:

class _myState extends State<MyApp> {
    ...
}

В dart вам не нужно использовать new (необязательно) для создания экземпляра объекта.

Однако по соглашению об именах имена классов должны быть в PascalCase, в данном случае _MyState вместо _myStateчто поможет сделать его более читабельным, особенно в вашем случае здесь.

...