Могу ли я получить доступ к переменной из родительского виджета в дочернем виджете в dart?

#flutter #dart #inheritance #parent-child #parent

#трепетать #дротик #наследование #родитель-ребенок #родитель

Вопрос:

Я совершенно новичок в флаттере/дротике и не уверен, что мой вопрос правильный. Ниже приведена часть кода, который я пишу. Теперь я хочу получить эту текстовую переменную из виджета SecondRoute и составить список строк, используя слово из текстовой переменной(я не знаю, смогу ли я сделать это с помощью StatelessWidget).Теперь я не могу получить эту переменную «текст» из класса _SecondRouteState, а также не могу составить из нее список в виджете SecondRoute. Текстовый варибейл берет строку из пользовательского ввода и поступает с главного экрана.

 class SecondRoute extends StatefulWidget {  String text;  SecondRoute({Key? key, required this.text}) : super(key: key);   @override  _SecondRouteState createState() =gt; _SecondRouteState();  }  class _SecondRouteState extends Statelt;SecondRoutegt; {  @override  Widget build(BuildContext context) {  return Scaffold(  appBar: AppBar(  title: const Text("Second Route"),  ),  body: Center(  child: Text(  "hello world",  // text,  style: TextStyle(fontSize: 24),  ),  ),  );  } }  

Ответ №1:

Вам нужно позвонить с widget

 class SecondRoute extends StatefulWidget {  String text;  SecondRoute({Key? key, required this.text}) : super(key: key);   @override  _SecondRouteState createState() =gt; _SecondRouteState();  }  class _SecondRouteState extends Statelt;SecondRoutegt; {  @override  Widget build(BuildContext context) {  return Scaffold(  appBar: AppBar(  title: const Text("Second Route"),  ),  body: Center(  child: Text(  widget.text, // changes need  style: TextStyle(fontSize: 24),  ),  ),  );  } }  

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

1. Могу ли я реализовать любой тип метода в классе _SecondRouteState?

2. да, вы можете это сделать

Ответ №2:

Попробуйте код ниже

 Text(widget.text),