Область действия экземпляра контекста

#dart #flutter

#дротик #трепетание

Вопрос:

Обращаясь к официальному руководству по Flutter, на что можно context ссылаться в _pushSaved() функции?

 class RandomWordsState extends State<RandomWords> {
  ...
  void _pushSaved() {
    Navigator.of(context).push(
      ...
    );
  }
}
  

Комментарии:

1. Это контекст состояния, предоставляемого StatefulWidget .

2. @CopsOnRoad Тогда это экземпляр класса? Мне не удалось получить к нему доступ из конструктора.

3. Контекст доступен при вызове и после initState() него. Таким образом, она еще недоступна в конструкторе.

Ответ №1:

Ссылка на документы Flutter:https://api.flutter.dev/flutter/widgets/State-class.html

Класс State имеет context свойство, которое является экземпляром BuildContext

Следовательно, вы можете ссылаться context на свой класс RandomWordsState, который расширяет класс State