在pushNamedandRemoveUntil内部传递参数

问题描述 投票:0回答:1

我通过pushNamedandRemoveUntil传递了参数,但是它显示了当我尝试访问传递的参数时,文本小部件不能为null。

CustomButton(
                    buttonText: 'Go',
                    buttonClick: () {Navigator.pushNamedAndRemoveUntil(context, Next.id, (route) => false, arguments: "123456789");},
                  ),

class Next extends StatefulWidget {

  const Next({this.number});
  static const id = "next";
  final String number;
  @override
  _NextState createState() => _NextState();
}

class _NextState extends State<Next> {
 @override
  Widget build(BuildContext context) {
       return Scaffold(
body: Container(child: Center(child: Text(widget.number)))
)
}
}

错误是断言失败:第298行pos 10:'data!= null'

android ios google-chrome flutter flutter-layout
1个回答
1
投票

要传递参数,您需要执行以下操作:

 Navigator.pushAndRemoveUntil(context,  MaterialPageRoute(builder: (context) => SecondPage(title : "Hello World")), (route) => false);

在这里导航到SecondPage小部件,并将参数title传递给小部件。

© www.soinside.com 2019 - 2024. All rights reserved.