0
io.on('connection', socket => { })
这段代码给你实例'套接字',但我目前需要在我的项目中的其他地方使用该实例。如何获取socket.io的活动实例?
有没有一种方式通过它运行的端口或类似的端口来访问它?
我试图改变与套接字Vuex(Vue.js)中的状态,我将它放入REST Api中的处理程序。
io.on('connection', socket => { })
这段代码给你实例'套接字',但我目前需要在我的项目中的其他地方使用该实例。如何获取socket.io的活动实例?
有没有一种方式通过它运行的端口或类似的端口来访问它?
我试图改变与套接字Vuex(Vue.js)中的状态,我将它放入REST Api中的处理程序。
正如Reiner在他的评论中所说的,你可以尝试将套接字保存到vuex本身,以便从你的所有项目中访问它。例如:
new Vue({
...
created() {
io.on('connection', socket => {
this.$store.dispatch('SET_SOCKET', {
getInstance() {
return socket
}
})
})
}
})
不要忘了定义'SET_SOCKET'
行为和突变。
然后,您将能够使用this.$store.state.socket.getInstance()
我用getInstance()
,因为如果我没有记错的插座变异本身随着时间的推移,以及VueX不喜欢访问它。
也许你可以将socket.io实例放入vuex中,以便它可以被所有实例访问。 – Reiner