Является ли создание статических переменных в виджете флаттера плохой идеей? Например, если у меня есть верхний виджет с сохранением состояния и скаффолдом, и я передаю globalKey на скаффолд так:
class DemoScreen extends StatefulWidget {
createState() => DemoScreenState();
}
class DemoScreenState extends State<DemoScreen> {
final scaffoldKey = GlobalKey<ScaffoldState>();
@override
Widget build(BuildContext context) {
return Scaffold(
key: scaffoldKey,
body: Builder(
builder: (BuildContext context) {
return ...
Я бы хотел получить доступ к этому ключу в виджете ниже в дереве, мог бы ясделать это final scaffoldKey
static
и получить доступ к этому ключу с помощью DemoScreenState.scaffoldKey
? Или это плохая идея? И почему?
Почему вы также определяете свои окончательные переменные в DemoScreenState
, а не в DemoScreen
? Это просто, чтобы сделать ваш код более читабельным, не используя widget.scaffoldKey
?