首页 > 解决方案 > React Navigation V2:navigation.push 和 navigation.navigate 的区别

问题描述

我是 React Native 的新手,目前正在学习React Native Navigation Docsnavigation.push()我想知道:和有什么区别navigation.navigate()

我试着自己找出来,但他们似乎完成了完全相同的事情......

标签: reactjsreact-nativereact-navigation

解决方案


如果您查看 的文档push,则会解释它们的不同之处。

Push 操作在堆栈顶部添加一个路由并向前导航。这与导航的不同之处在于,如果组件已经安装在那里,导航将弹回堆栈中的较早位置。Push 将始终添加在顶部,因此可以多次安装组件。

我们可以以 Instagram 为例;

考虑导航到用户的个人资料。然后您可以检查用户的关注者,然后您也可以导航到他们的个人资料。如果您只使用操作执行相同的操作navigate,则当您从关注者列表屏幕单击用户的个人资料时,将导航到以前的个人资料,但如果您使用push它将新屏幕推送到堆栈并显示正确的个人资料。这样就可以goBack到第一屏了。


推荐阅读