RN中pop有三种用法
1.直接pop
2.popToTop
3.popToRoute
上面俩不讲,是个人都会用。 第三个简单说下:返回到某一个js
看了一个网上有人用的做法:
const routes = this.props.navigator.state.routeStack;
let destinationRoute = '';
for (let i = routes.length - 1; i >= 0; i--) {
if(routes[i].name === 'LoginView'){
destinationRoute = this.props.navigator.getCurrentRoutes()[i]
return;
}
} this.props.navigator.popToRoute(destinationRoute);
尝试了下是有瑕疵的,并不能跳转,问题在于 return ;
把this.props.navigator.popToRoute(destinationRoute);放在 return 之前就好了。
还有就是 至于这个name 或者我写的title这个跟你push的时候传入的js名字前面的key有关(你写的什么就用什么我写的title 而引用代码那个人用的name)。
其实route里面就是一个数组,数组里面是字典 ,对应你传入的东西js 信息,你也可以使用console.log(“**“,routes[i]);放在for循环里面,在Xcode控制台查看routes里面的东西,就是一个个字典组成的数组,跟iOS 的navigationController是一样一样的