vue的高级组件provide和inject的运用
provide的使用方法:
在父组件中定义provide
provide和data,methods同级
provide中返回值是一个对象,相当于将对象中的内容注入到子孙组件
子孙组件使用inject: [ 由provide键名组成的数组 ] ,来获取父级组件的方法或者其他属性
具体看代码
父组件:
provide(){
return{
closeCurrent:this.closeCurrent,
reload: this.routeReload // 刷新当前页
}
},
methods: {
closeCurrent () {
console.log("你好")
}
}
子组件:
inject: ["closeCurrent","reload"],
1
这样在子孙组件中就可以使用closeCurrent以及reload这两个方法了
使用父组件注入的内容也要通过this来访问