вю + WebSocket демо:
<! - Vue + подключение WebSocket Demo ->
<шаблон>
<DIV класс = ""> + подключение WebSocket VUE Demo </ DIV>
</ Template>
<Script>
Экспорт по умолчанию {
Data () {
возвращение {
// разъем флаг
lockReconnect: ложному ,
wsCfg: {
// WebSocket адрес
URL: 'WS: //10.74.52.107: 9001 / WebSocket'
}
};
}
Метода: {
createWebSocket () {
Попробовать {
// создать веб - сокет разъема
сопзИте розетку = новый новыйWebSocket ( это .wsCfg.url);
// инициализировать событие
в этот .initEventHandle (Socket);
} улов (Е) {
// повторно Error
в этот .reconnect ( это .wsCfg.url);
}
},
initEventHandle (гнездо) {
// триггер , когда соединение закрывается
socket.onclose = () => {
console.log ( «закрыл соединение" );
};
// срабатывает , когда происходит ошибка связи
socket.onerror = () => {
// воссозданный длинную ссылку
это.reconnect ();
};
// установление соединения триггера
socket.onopen = () => {
console.log ( 'соединение успех' );
};
// срабатывает , когда клиент получает данные сервера
socket.onmessage = тзд = > {
// логика службы обработки
это .list = msg.data;
};
},
повторно () {
ЕСЛИ ( это .lockReconnect) {
возвращение ;
}
это .lockReconnect = истина ;
// всегда будет повторно разъем не предусмотрен Во избежание чрезмерной задержки запроса
SetTimeout (() => {
это .lockReconnect = ложь ;
это .createWebSocket ( это .wsCfg.url);
}, 2000 );
}
},
Установлен () {
этот .createWebSocket ();
}
};
</ скрипт>