场景:
A页面先$emit触发B页面的$on方法,再跳转到B页面。
结果:
第一次跳转无法触发到$on监听的方法,返回A页面再执行就能触发。
$on是一个注册行为,事件需要在注册后,才能被emit触发。
在A页面第一次$emit时,在B页面的$on还没有注册,$emit先于$on执行,自然就无法触发到监控事件。
解决方法:
在第一次跳转时,给$emit事件加一个setTimeout(),让A页面的$emit延迟到$on方法后执行。