我正在创建一个插件,它将发出由套接字触发的基本 nuxt 事件。然后将收到 nuxt 事件并打开一个 snackbar 。在组件内部时,使用 $nuxt
可以轻松发送和接收事件。
this.$nuxt.$on('open-snackbar', this.handler)
this.$nuxt.$emit('open-snackbar', options)
但是,我如何尝试在插件中执行此操作,因此它不绑定(bind)到任何一个页面,而是存在于整个应用程序中。我似乎无法弄清楚如何从所述插件中发出它:export default (context) => {
console.log(context)
console.log(context.$emit)
console.log(context.emit)
console.log(context.$nuxt)
console.log(context.app.emit)
console.log(context.app.$nuxt)
}
context.app
似乎它是正确的对象,但它似乎不起作用。有任何想法吗?
最佳答案
你可以在你的 plugin.js 文件中使用类似的东西,插件会做的是使用 window.$nuxt.$emit
在客户端可用
export default function (context) {
$nuxt.$emit('event-to-emit')
}
关于nuxt.js - 如何从 nuxt 插件发出事件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58142572/