话说 天不老,js难学,心似双丝网,中有千千结。在开发uni-app的时候,总会遇到的千奇百怪的问题,其中页面传值中有个需要相当注意的点,当然页面传值不止这种方式,作为一个uni-app 小白在使用时我也踩了这个坑,分享一下。

 特别是在遇到以下这种情况的时候页面A 跳转页面B, 页面A中 $emit()事件,页面B$on监听事件,这时候就会发现明明事件发射了,但是页面B就是监听不到。

造成这种问题是因为发射事件在监听事件之前,打个比喻,类似于汽车撞墙了你知道拐了,股票涨了你知道买了,犯错误判刑了你知道悔改了,鼻涕都流到嘴里了你才知道要甩了。 嗯嗯,真是形象。

解决办法:

 只要保证在$emit事件之前能保证已经在监听$on 就能解决,但是上面的业务场景明显办不到,所以可以使用 localStorage 或者uniapp中 getApp() 等的方式将要传递的东东暂存,就可以实现以上场景。 

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐