今天遇到一个奇葩的问题
我使用bus.js传值
然后兄弟组件里面出现一个很怪的问题,我使用2号模块先制作值,然后3号模块获取,但是获取不到。
我使用3号模块在前就可以。一般逻辑不是得先由2号模块先做好值然后3号回去嘛,怎么现在我3号在前反而能实现呢??
<template> <div> <demo-val2></demo-val2> <demo-val3></demo-val3> </div></template><script> import demoVal2 from './demo2.vue' import demoVal3 from './demo3.vue' export default { name: '', components: { demoVal2, demoVal3 } }</script><template> <div>demo2</div></template><script> import bus from './bus.js' export default { name: "demo2", mounted() { console.log(2222) bus.$emit('val', 'toval') } }</script><template> <div>demo3</div></template><script> import bus from './bus.js' export default { name: "demo3", mounted() { console.log(3333) bus.$on('val', (data) => { console.log(data) }) } }</script>不显示123 /*******************************************/ 交换一下<template> <div> <demo-val3></demo-val3> <demo-val2></demo-val2> </div></template>输出123
这是为什么呢????
慕标5832272
智慧大石
相关分类