Rit*_*aik 7 javascript vue.js vuex nuxt.js
我在我的 vuejs-nuxt 项目中使用 SSR 模式。因此,每当我尝试调用套接字事件时,我都需要将用户 ID 从商店传递给该套接字。GetUserUUID getter 在所有其他 API 中都可以正常工作。但只有在从“plugin/socketio.js”文件调用的情况下才会失败。我需要一些帮助才能从 getter 获取数据。
插件/socketio.js
export default async ({ store, $axios }) => {
console.log(store.getters.GetUserUUID,"Current User UUID which is showing undefined");
function listenStock({ channelName, eventName }, callback) {
console.log("callback",callback);
window.Echo.channel(channelName).listen(eventName, callback);
}
//Fetch user data
listenStock(
{
channelName: `BalanceUpdateEvent.${store.getters.GetUserUUID}`,
eventName: "BalanceUpdateEvent"
},
({ data }) => {
console.log(data, "socket data");
try {
store.dispatch("setUserBalance", data.data.userBalance);
} catch (ex) {
console.log(ex);
}
}
);
Run Code Online (Sandbox Code Playgroud)
nuxt.config.js
plugins: [
{ src: '~/plugins/socketio', mode: 'client' }
]
echo: {
plugins: ['~/plugins/socketio.js']
},
Run Code Online (Sandbox Code Playgroud)
此图像是 console.log(store.getters) 的结果,但我需要访问 GetUserUUID。
请在 nuxt.config.js 中尝试一下
export default {
plugins: [
....
{ src: '~/plugins/socketio.js', mode: 'client' }, // only on client side
...
]
}
Run Code Online (Sandbox Code Playgroud)
在客户端运行你的插件
| 归档时间: |
|
| 查看次数: |
122 次 |
| 最近记录: |