vue 组件之间互相传值:兄弟组件通信
我们在项目中经常会遇到兄弟组件通信的情况。在大型项目中我们可以通过引入 vuex 轻松管理各组件之间通信问题,但在一些小型的项目中,我们就没有必要去引入 vuex。有几种方法:
方法一:先子传父,再父传子
思路:子传父:首先我们在 a.vue 组件中 ,给按钮 botton 绑定一个 handleClick 事件,事件中我们通过 this.$emit() 方法去触发一个自定义事件,并传递我们的参数。示例中我们通过 this.$emit() 去触发 isLogFn 这个方法自定义事件,并将 log 参数传递出去。我们要在父组件中去监听这个自定义事件,去触发对应的方法,并接受 a 组件传过来的参数。此时我们就完成了子组件向父组件传值的过程。然后 b 组件中需要创建 props,定义一个 isLog 属性,这个属性就是我们传过来的数值。然后我们在计算属性中处理这个数据,最终供 b 组件使用。示例中,我们在 v-show=”isLogin” 中用来控制弹窗是否打开。
a.vue 子组件
app.vue 父组件
b.vue 子组件
本方法文章转子网络,如有侵权联系删除
谢谢支持我是涵酱!