Vue.js 类星体中加载vue本机websocket

Vue.js 类星体中加载vue本机websocket,vue.js,websocket,quasar,Vue.js,Websocket,Quasar,我正在尝试加载vue原生WebSocket,但我有点不知所措 我尝试在quasar中将其作为启动文件运行: import VueNativeSock from 'vue-native-websocket' export default async ({ app, router, store, Vue }) => { Vue.use(VueNativeSock, 'ws://127.0.0.1:5679', { store: store, //format: '

我正在尝试加载vue原生WebSocket,但我有点不知所措

我尝试在quasar中将其作为启动文件运行:

import VueNativeSock from 'vue-native-websocket'

export default async ({ app, router, store, Vue }) => {
   Vue.use(VueNativeSock, 'ws://127.0.0.1:5679', { 
     store: store,
     //format: 'json',
     reconnection: true,
     reconnectionAttempts: 5,
     reconnectionDelay: 3000
   })
}
然后:

this.$socket.send("my value");
在我的组件中的函数中,但我想我误解了这个概念。我对类星体很陌生,所以一个有效的例子将是非常好的

我可以通过在我想要使用的组件中本地创建一个连接来运行它,方法是将其放入create方法:

this.connection = new WebSocket("ws://127.0.0.1:5679/");
然后用这样的方法:

this.connection.send("myValue")
但目标是能够在我喜欢的任何组件中使用连接,而无需在该组件的create函数中本地创建连接

我怎样才能做到这一点

更新

使用时:

在main.js中实现后,我收到了这个错误消息

import Vue from 'vue'
import VueRouter from 'vue-router'

import routes from './routes'

Vue.use(VueRouter)
import  VueNativeSock  from  "vue-native-websocket-vue3" ;

Vue.use( VueNativeSock , 'ws://127.0.0.1:5679' );
错误消息:

未定义的属性“$socket” 在Object.install(vueNativeWebsocket.common.js?9cca:3701) 在Function.Vue.use(Vue.runtime.esm.js?5593:5107) 评估时(索引js?a18c:10) 在Module../src/router/index.js(app.js:1147)中:


可以肯定的是,您正在使用Quasar 1(=Vue 2)并在项目中设置了Vuex存储,对吗?在这种情况下,启动文件看起来很好,只是可以删除
async
。当您尝试
此.socket.send(“我的值”)时会发生什么在您的组件中?
$socket
是否未定义或存在其他错误?嗯,实际上
类星体-v
返回
2.2.6
,因此这实际上可能是问题所在。我收到此错误消息:
vuex.esm.js?94e4:460[vuex]未知突变类型:socket\u ONOPEN