使用场景
如子组件的子组件想获取祖先组件的至或者方法,用props传递显然是吃力不讨好,难以维护,用vuex的话在比较小的项目中会增加复杂度,所以这里采取另外一种方法
Provide& Inject
这是vue官方提供的一种子孙组件和祖先组件传值的方法,使用方法如下
祖先组件
<script>
provide: {
return{
name: '十里坡剑神',
method: this.echo
},
}
mehotds: {
echo() {
console.log('我是祖先组件的方法')
}
}
</script>
子孙组件
<script>
inject: ['name','method'], // 数组里接收provide的属性
mehotds: {
refer(){
this.method() // 我是祖先组件的方法
console.log(this.name) // 十里坡剑神
}
}
</script>