123456789101112131415161718192021222324252627282930313233343536373839 |
- import Stomp from "stompjs";
- import store from '../store'
- // ============================一般使用的变量============================
- let number = 0;
- export const dataAdapterInit = initialize;
- // ============================ 大函数体 ============================
- function initialize() {
- let adpClient = null;
- var url = "ws://192.168.2.3:8075/wisdom";
- adpClient = Stomp.client(url);
- adpClient.debug = null;
- adpClient.connect({}, adpClient => connectCallBackSubscribe(adpClient), error => reconnect(error, adpClient));
- }
- // 断线重连
- function reconnect(error, adpClient) {
- //连接失败时再次调用函数
- number++;
- adpClient.connected = false;
- clearTimeout(setTimeout(initialize(), 1000 * 5));
- debugX("DataAdapter reconnect:" + number + " 次");
- return;
- }
- // ============================ 订阅函数体 ============================
- function connectCallBackSubscribe(adpClient) {
- console.warn(adpClient);
- console.warn('订阅函数体');
- number = 0;
- adpClient.connected = true;
- adpClient.subscribe("/topic/one", stompMessage => reflexWindturbineBasicInformation(stompMessage));
- }
- // ============================ 解析函数体 ============================
- function reflexWindturbineBasicInformation(stompMessage) {
- var windturbineInformationArray = JSON.parse(stompMessage.body);
- store.dispatch('updateWindturbineArray', windturbineInformationArray);
- }
- // ============================ 其他 ============================
- function debugX(text) {
- // console.log(text);
- }
|