当前位置: 首页 > Web前端 > JavaScript

Vue中的provide-inject属性

时间:2023-03-26 21:34:37 JavaScript

provide选项应该是一个对象或者是一个返回对象的函数。该对象包含可以注入其子孙组件的属性示例//父组件提供'foo'varProvider={provide:{foo:'bar'},//...}//子组件注入'foo'varChild={inject:['foo'],created(){console.log(this.foo)//=>"bar"}//...}provide传过来的值无法响应,换进去父组件provide中的值,后代注入的值,无法响应监听变化,但是如果provide是一个对象,那么后代组件中可以监听到变化//父组件provides'foo'varProvider={provide:{foo:{a:1}},//...}//Subcomponentinjects'foo'varChild={inject:['foo']}如何改变对象中的值提供?this._provided.foo.a=2这时候a会变成2,子孙组件在页面渲染或者数据中使用的foo对象中a的值也会变成2