请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

react-native-easy-toast 不能全局注册了?

我记着之前的老视频,通过DeviceEventEmitter注册了一个事件,可以在任何页面去显示toast,然后刚才我试了一下,发现在其他的页面显示不出来。

然后看了一下老师的新项目的代码,发现并没用用注册事件,而是在每个需要的页面去单独的引用toast组件。

我在HomePage页面注册了一个事件,然后在其他的页面是可以触发这个事件的,如alert是可以弹出,console.log可以显示,但是Toast并不显示,通过多次测试,我发现,其实Toast已经显示了,只不过因为页面层级的关系,Toast被当前的页面遮挡了。

但是为啥以前做老项目的时候,可以用呢?

正在回答

1回答

新的项目的首页结构和旧的项目的首页结构是不一样的,旧的项目中Toast之说以能在所有页面都能展示是因为它的HomePage中Toast是在最外层的,在新项目中使用了react-navigation,react-navigation限制了Toast的展示。

0 回复 有任何疑惑可以回复我~
  • 提问者 mtfcloud #1
    明白了,那老师有没有想法去改进这个Toast组件,让它可以在最顶层显示?现在的toast组件是与当前页面一起的,当前页面返回后toast组件也会随着页面退出。
    回复 有任何疑惑可以回复我~ 2019-06-10 08:22:51
问题已解决,确定采纳
还有疑问,暂不采纳
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号