在 nuxt 插件中获取 'this'?
get 'this' in nuxt plugin?
所以你可以像这样在 nuxt 中创建一个插件:
const utils = {
name: utils,
emmitModel(name, val) {
const value = Object.assign({}, this.value)
value[name] = val
this.$emit('input', value)
},
}
export default ({ app }, inject) => {
inject('utils', utils)
}
然而,在上面,'this'没有定义。如何访问 emmitModel 中的 'this' 组件上下文?
假设 this
引用您的 Vue 实例,将您的 utils
对象包装在 Vue 实例中,如下所示:
const utils = new Vue({
// ..stuff here
})
export default ({ app }, inject) => {
inject('utils', utils)
}
然后在 Vue 对象中,您可以完全使用组件方法、计算、数据,并访问 VM 和 utils 将作为 this.$utils
注入 nuxt
所以你可以像这样在 nuxt 中创建一个插件:
const utils = {
name: utils,
emmitModel(name, val) {
const value = Object.assign({}, this.value)
value[name] = val
this.$emit('input', value)
},
}
export default ({ app }, inject) => {
inject('utils', utils)
}
然而,在上面,'this'没有定义。如何访问 emmitModel 中的 'this' 组件上下文?
假设 this
引用您的 Vue 实例,将您的 utils
对象包装在 Vue 实例中,如下所示:
const utils = new Vue({
// ..stuff here
})
export default ({ app }, inject) => {
inject('utils', utils)
}
然后在 Vue 对象中,您可以完全使用组件方法、计算、数据,并访问 VM 和 utils 将作为 this.$utils