简单来说,就是一个子组件通过$emit来传一个object到父组件,但是父组件接收不到参数
比如一个简单的单页面应用,app.vue 文件里面通过 vue-router 引入了 a组件 和 b组件
代码大概如下
<div class='app'>
<div class='nav'>
<router-link to='/a'>前往a页面</router-link>
<router-link to='/b'>前往b页面</router-link>
</div>
<div class='content'>
<router-view></router-view>
</div>
</div>
然后,现在点击 a组件 里面的一个按钮之后,
把一个对象传到 b组件 (不用vuex)
我的想法就是,点击了a组件的button之后,this.$emit一个事件,
然后把对象做为参数,一起传到app.vue ,
然后在app.vue 通过监听事件获取到 a组件 传来的事件和参数
然后 我试了一下在分别在app.vue的 .content 和 router-view 用v-on 来接收事件
发现在router-view能够成功接收到a组件传来的事件
然后试着console一下接收到的参数
发现输出undefined
代码大概如下:

希望各位大佬指教一下,很简单的问题但是搞了好久
appreciate。
湖上湖
动漫人物
随时随地看视频慕课网APP
相关分类