一 前言
记录一个小技巧,关于在路由push和pop的时候带上数据互相传递,而且不需要在注册的命名路由声明参数,使用起来比较方便
二、正向传值
1.直接在界面A push的时候添加参数
onPressed: () {
Navigator.pushNamed(context,'/HomePage2Copy',arguments:'flutter');
}
2.下一个界面B接收值,构建方法build之下,return之前调用
String value = ModalRoute.of(context).settings.arguments;
print('打印 : $value');
3.打印值
打印:flutter
三、逆向传值
1.在B界面触发pop事件,添加参数
onPressed: () {
Navigator.pop(context, "我是回传的值");
}
2.在A界面push方法添加then回调,打印value,是不是很方便?
onPressed: () {
Navigator.pushNamed(context,'/HomePage2Copy',arguments:'flutter').then((value){
print('$value');
});
}
欢迎大家有问题可以入群 QQ 528214618 讨论Flutter技术
如有不足请指正,谢谢大家!

网友评论