📜  带有参数的flutter pushName (1)

📅  最后修改于: 2023-12-03 15:25:27.173000             🧑  作者: Mango

带有参数的 Flutter pushNamed

在 Flutter 应用程序中,路由是导航到应用程序的屏幕的方式。您可以使用 Navigator 类来管理应用程序的路由。

当您使用 Navigator.pushNamed() 方法时,它带有一个路径作为参数并打开命名路由。这是一个很好的方法,因为它让您的代码看起来更清晰,并且更容易管理路由。

但有时您可能需要传递参数到打开的命名路由,这就是 pushNamed() 方法不能完成的地方。这就是带有参数的 Flutter pushNamed() 很有用的地方。

如何使用

下面是带有参数的 pushNamed() 方法的语法:

Navigator.pushNamed(context, '/routeName', arguments: arg);

在此语法中,context 是 BuildContext 对象,/routeName 是您要导航到的命名路由的名称,arguments 是您要传递给该路由的参数。

假设我们要打开一个带有用户名参数的用户资料页面:

Navigator.pushNamed(context, '/userProfile', arguments: {'username': 'JohnDoe'});

在新页面中,我们可以像这样获取参数:

final Map<String, dynamic> userData = ModalRoute.of(context).settings.arguments;
final String username = userData['username'];
总结

在 Flutter 应用程序中,带有参数的 pushNamed() 方法是一种非常有用的技术。使用此技术可以轻松地传递参数并导航到命名路由。