Vue.js 依赖注入:原理、局限与优化方案
1. Vue.js 的 provide 和 inject 选项
Vue.js 提供了 provide 和 inject 两个选项,通常用于插件开发,但也能在任何 Vue 应用中使用。通过 provide 选项,组件可以定义能被其后代组件使用 inject 注入的元素。
以下是一个使用经典 Vue 语法的基础示例:
// 父组件提供 'foo'
var Provider = {
provide: {
foo: 'bar'
},
// ...
}
// 子组件注入 'foo'
var Child = {
inject: ['foo'],
created () {
console.log(this.foo) // => "bar"
}
// ...
}
2. TypeScript 支持
假设我们有一个组件树,若要定义一个可注入到 UserSettings 组件的依赖,可以在其祖先组件(如 Settings 、 Content 或 App )中引入提供者。在 App 级别定义的提供者可在组件树的任何地方使用。
以下是在 App 组件中提供
超级会员免费看
订阅专栏 解锁全文
7

被折叠的 条评论
为什么被折叠?



