我正在查看 flutter.dev 教程。我对他们的 2 篇文章感到有些困惑。
1)将数据发送到新屏幕 https://flutter.dev/docs/cookbook/navigation/passing-data
2)将参数传递给命名路由 https://flutter.dev/docs/cookbook/navigation/navigate-with-arguments
对我来说,他们或多或少都完成了同样的事情,但方式不同。似乎#1 使用 Navigator 的“arguments”参数传递数据,然后通过 ModalRoute.of(context).settings.arguments 将其拉出目标小部件。似乎 #2 使用目标小部件的构造函数来接收数据。我错过了什么吗?我什么时候会使用一个和另一个?
谢谢!
有两个主要区别:
Route子类。Using push,它是调用的小部件,Navigator.push而 using pushNamed,它是MaterialApp/CupertinoApp或onGenerateRoute。这会对路由之间的转换、关注点分离或深层链接等功能产生影响。
| 归档时间: |
|
| 查看次数: |
500 次 |
| 最近记录: |