Vue.js 类星体中加载vue本机websocket
我正在尝试加载vue原生WebSocket,但我有点不知所措 我尝试在quasar中将其作为启动文件运行: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: '
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