代码之家  ›  专栏  ›  技术社区  ›  yN.

向屏幕传递数据时,Navigator.push()与Navigator.pushNamed()的比较

  •  -1
  • yN.  · 技术社区  · 6 年前

    我想把数据传送到另一个屏幕。 According to the docs

    Navigator.pushNamed(
      context,
      NextScreen.route,
      arguments: NextScreenArgs("pew"),
    );
    

    然而同样的(?)可以通过以下方法实现:

    Navigator.push(
      context,
      MaterialPageRoute(
        builder: (context) => NextScreen("pew"),
      ),
    );
    

    pushNamed ?

    0 回复  |  直到 6 年前
        1
  •  0
  •   Yauhen Sampir    6 年前

    flutr团队讨论了github上的路由。 我喜欢这样的解释:

    而不使用命名路由的导航对于较小的 在更复杂的应用程序中,它添加了代码复制。这是 尤其是如果你有一个巡警只允许登录 在用户导航时运行。

    https://github.com/flutter/flutter/issues/3867