From 86d88edcc0af550fe34253fec3a782aa83f4242a Mon Sep 17 00:00:00 2001 From: hwh <332078369@qq.com> Date: 星期一, 02 九月 2024 14:09:32 +0800 Subject: [PATCH] 连接signalR --- Web/src/views/device/alarmManage/index.vue | 20 ++++++++++++++++++-- 1 files changed, 18 insertions(+), 2 deletions(-) diff --git a/Web/src/views/device/alarmManage/index.vue b/Web/src/views/device/alarmManage/index.vue index 7adff37..6235e26 100644 --- a/Web/src/views/device/alarmManage/index.vue +++ b/Web/src/views/device/alarmManage/index.vue @@ -49,13 +49,29 @@ </template> <script lang="ts" setup> -import { ref, reactive } from 'vue'; +import { ref, reactive,onMounted } from 'vue'; import { Splitpanes, Pane } from 'splitpanes'; import 'splitpanes/dist/splitpanes.css'; import { Vue2 } from 'vue-demi'; import { listWcsAlarmInfo, resetWcsAlarmInfo } from '/@/api/wcs/wcsAlarmInfo'; import { signalR } from './signalR'; - +//杩炴帴signalR 鐩戝惉鍙樻洿 +onMounted(async () => { + signalR.off('PublicAlarm'); + signalR.on('PublicAlarm', (data: any) => { + console.log(data) + var listAlarm = tableData.value.filter(t => t.id == data.id); + if (listAlarm.length == 0) { + tableData.value.unshift(data) + tableParams.value.total = tableData.value.length; + } + else { + //濡傛灉宸茬粡瀛樺湪灏辨洿鏂版暟鎹� + const index = tableData.value.findIndex(t => t.id == data.id); + tableData.value.splice(index, 1, data); + } + }); +}); //鍫嗗灈鏈烘暟鎹� const cellsDataLine = [ { Id: 1, Code: '001', LineCode: '', EndLocat: '', IsShow: 1, IsUse: 0, BoxHeight: 10 }, -- Gitblit v1.8.0