nihgwu/react-native-dva-starter

按照此实例搭建,进入路由,在返回,除了首页,其他页面全都为空了

sunlandong opened this issue · 19 comments

在首页里,随意进入一个路由,再次返回,首页,除了首页以外。tab路由的其他路由关联页面都为空了,我运行了你们的项目,也是复现这个问题
image

这是一开始的状态,然后我在首页,点击进入详情,在返回首页,
image

测试发现,是TabNavigator的lazy属性为true就会这样,但是不知道为什么会影响

我记得这是react-navigation本身的问题,升下级应该能解决

@nihgwu 升级了react-navigation 到 1.4.0版本 都没有解决

嗯,我也发现了,不过这个是react-navigation的问题,尝试了下还没解决╮(╯▽╰)╭
https://github.com/react-navigation/react-navigation/issues?utf8=%E2%9C%93&q=blank+screen
react-navigation/redux-helpers#7

解决了吗

还是没有解决

登录回来 组件会被销毁了

升级到1.5.0依然还是存在问题

有谁解决这问题了吗?

解决了:
HomeNavigator: { screen: () => <HomeNavigator /> }

@zhuanglong 欢迎 PR 👍

@zhuanglong 这样好像又有另一个问题了 就是tab的title没了

@YinRenjie1993 只在StackNavigator里面改就行了, TabNavigator可以不变

@neeboo 大佬可以贴代码么 Main: { screen: () => <MainNavigator /> },这么改details点不进去了

感觉都是奇技淫巧,并没有解决实际问题,问题应该是出在了react-navigation-redux-helpers上,据说router不用redux管理就可以了,我暂时没时间看这个问题

@YinRenjie1993 ,是的,貌似在各种嵌套之后就会出现各种问题

我提交了PR:#39

sjcUD commented

只用在models/router.js 把NavigationActions.COMPLETE_TRANSITION,加到actions[
...
NavigationActions.COMPLETE_TRANSITION,
] 就可以了

@sjcUD 嗯,看了 @Jeepeng 的pr,应该是新的navigation 没有被proxy出去