提交 2db5fb74 编写于 作者: 张磊's avatar 张磊

save

上级 3bc49e51
// ES6 import
import store from '../';
import storejs from 'storejs';
import io from 'socket.io-client';
let socketTimer = null;
export default {
namespaced: true,
state: {
socketClient: null
socketClient: null,
},
actions: {
initSocket ({ commit, rootState }, payload) {
const socket = io.connect(payload.url, {
query: {
loginUserNum: `diagnose_list_socket_${payload.userId}`
// loginUserNum: `diagnose_list_socket_888`
}
});
commit('SET_SOCKET', socket);
......@@ -31,12 +32,17 @@ export default {
}
state.socketClient.on("connection", (socket) => {
console.log ('socket 链接成功',socket);
console.log ('socketTimer---',socketTimer);
if(socketTimer){
clearInterval(socketTimer);
}
});
state.socketClient.on("connect_error", (err) => {
console.log ('socket connect_error',err);
});
state.socketClient.on("disconnect", (socket) => {
console.log ('socket disconnect',socket);
store.commit('RECONNECT_SOCKET');
});
state.socketClient.on("diagnose_push_event", (socket) => {
console.log('diagnose_push_event---', socket);
......@@ -110,6 +116,13 @@ export default {
duration: 5000,
position: 'top-right',
})
},
RECONNECT_SOCKET: (state, payload) => {
socketTimer = setInterval(function (){
const i = storejs.get('initSocketInfo');
console.log('----initSocketInfo', i);
store.dispatch( 'socket/initSocket', i)
}, 2000);
}
},
};
......@@ -32,6 +32,7 @@
</template>
<script>
import { getInnerLoginUrl } from "../../utils";
import storejs from 'storejs';
const BUILD_ENV = process.env.BUILD_ENV;
let vm = null;
export default {
......@@ -81,6 +82,7 @@ export default {
userID: userId
};
const u = this.getSocketUrl(BUILD_ENV);
storejs.set('initSocketInfo', {url: u,userId: userId});
this.$store.dispatch( 'socket/initSocket',{url: u,userId: userId})
vueMenuDtos.map( item => {
if(item.index.indexOf('administrators') > -1){
......
Markdown 格式
0% or
您添加了 0 到此讨论。请谨慎行事。
先完成此消息的编辑!
想要评论请 注册