Vue.js Nuxt:Vuex在vuejs组件外部提交或分派消息
我有一个nuxt中的应用程序,我想连接到websocket,我见过一些例子,其中接收消息的回调放在一个组件中,但我认为并不理想,我想把回调放在我的存储中,目前我的代码是这样的Vue.js Nuxt:Vuex在vuejs组件外部提交或分派消息,vue.js,vuejs2,vuex,nuxt.js,Vue.js,Vuejs2,Vuex,Nuxt.js,我有一个nuxt中的应用程序,我想连接到websocket,我见过一些例子,其中接收消息的回调放在一个组件中,但我认为并不理想,我想把回调放在我的存储中,目前我的代码是这样的 //I'm using phoenix websocket var ROOT_SOCKET = `wss://${URL}/socket`; var socket = new Socket(ROOT_SOCKET); socket.connect() var chan = socket.channel(`connect
//I'm using phoenix websocket
var ROOT_SOCKET = `wss://${URL}/socket`;
var socket = new Socket(ROOT_SOCKET);
socket.connect()
var chan = socket.channel(`connect:${guid}`);
chan.join();
console.log("esperando mensj");
chan.on("translate", payload => {
console.log(JSON.stringify(payload));
<store>.commit("loadTranslation",payload) //<- how can I access to my store?
})
chan.onError(err => console.log(`ERROR connecting!!! ${err}`));
const createStore = () => {
return new Vuex.Store({
state: {},
mutations:{
loadTranslation(state,payload){...}
},
....
})}
//我正在使用phoenix websocket
var ROOT_SOCKET=`wss://${URL}/SOCKET`;
var插座=新插座(根插座);
socket.connect()
var chan=socket.channel(`connect:${guid}`);
陈.join();
console.log(“世界语mensj”);
chan.on(“翻译”,有效载荷=>{
log(JSON.stringify(payload));
.commit(“loadTranslation”,payload)//console.log(`ERROR connecting!!!${err}`));
常量createStore=()=>{
返回新的Vuex.Store({
国家:{},
突变:{
loadTranslation(状态,有效负载){…}
},
....
})}
我如何访问我自己的存储文件中的存储并进行提交???有可能吗?。。。
我知道有一个vuex插件,但我不能很好地理解文档,我更喜欢在没有该插件的情况下构建它
谢谢你们…希望你们能帮我…你们可以在nuxt插件中完成
您的websocket连接将在商店建立之前建立。
export default {
plugins: ['~/plugins/chat.js']
}
// chat.js
export default ({ store }) => {
your code that use store here
}