provide/inject 为咱们提供了一种组件间传值的形式,然而默认状况下,provide/inject 绑定并不是响应式的。用官网的话来说就是:
那么,咱们就能够通过传递一个对象的形式,实现数据的响应式。
// 父组件 Father.vue
data(){
return {
obj: { // 肯定是个对象, 能力实现响应式
name: 'eavan'
}
}
},
provide() { // 要拜访组件实例 property,咱们须要将 provide 转换为返回对象的函数
return{user: this.obj}
}
// 子组件 Child.vue
export default {
name: 'Child',
inject: ['user'] // 失常应用 inject
}