From 8f9a53029632f258bbafa8f6dc2c896759206695 Mon Sep 17 00:00:00 2001
From: 648540858 <648540858@qq.com>
Date: 星期三, 02 三月 2022 09:22:20 +0800
Subject: [PATCH] Merge pull request #360 from TristingChen/alarm-test
---
web_src/src/components/UiHeader.vue | 65 +++++++++++++++++++++-----------
1 files changed, 43 insertions(+), 22 deletions(-)
diff --git a/web_src/src/components/UiHeader.vue b/web_src/src/components/UiHeader.vue
index b2e9bbb..828dda9 100644
--- a/web_src/src/components/UiHeader.vue
+++ b/web_src/src/components/UiHeader.vue
@@ -2,7 +2,8 @@
<div id="UiHeader">
<el-menu router :default-active="activeIndex" menu-trigger="click" background-color="#545c64" text-color="#fff" active-text-color="#ffd04b" mode="horizontal">
<el-menu-item index="/">鎺у埗鍙�</el-menu-item>
- <el-menu-item index="/deviceList">璁惧鍒楄〃</el-menu-item>
+ <el-menu-item index="/live">瀹炴椂鐩戞帶</el-menu-item>
+ <el-menu-item index="/deviceList">鍥芥爣璁惧</el-menu-item>
<el-menu-item index="/pushVideoList">鎺ㄦ祦鍒楄〃</el-menu-item>
<el-menu-item index="/streamProxyList">鎷夋祦浠g悊</el-menu-item>
<el-menu-item index="/cloudRecord">浜戠褰曞儚</el-menu-item>
@@ -15,7 +16,7 @@
<!-- <el-menu-item index="/setting/sip">鍥芥爣鏈嶅姟</el-menu-item>-->
<!-- <el-menu-item index="/setting/media">濯掍綋鏈嶅姟</el-menu-item>-->
<!-- </el-submenu>-->
- <el-switch v-model="alarmNotify" active-text="鎶ヨ淇℃伅鎺ㄩ��" style="display: block float: right" @change="sseControl"></el-switch>
+ <el-switch v-model="alarmNotify" active-text="鎶ヨ淇℃伅鎺ㄩ��" style="display: block float: right" @change="alarmNotifyChannge"></el-switch>
<!-- <el-menu-item style="float: right;" @click="loginout">閫�鍑�</el-menu-item>-->
<el-submenu index="" style="float: right;" >
<template slot="title">娆㈣繋锛寋{this.$cookies.get("session").username}}</template>
@@ -35,10 +36,22 @@
components: { Notification, changePasswordDialog },
data() {
return {
- alarmNotify: true,
+ alarmNotify: false,
sseSource: null,
activeIndex: this.$route.path,
};
+ },
+ created(){
+ if (this.$route.path.startsWith("/channelList")){
+ this.activeIndex = "/deviceList"
+ }
+
+ },
+ mounted() {
+ window.addEventListener('beforeunload', e => this.beforeunloadHandler(e))
+ // window.addEventListener('unload', e => this.unloadHandler(e))
+ this.alarmNotify = this.getAlarmSwitchStatus() === "true";
+ this.sseControl();
},
methods:{
loginout(){
@@ -65,6 +78,10 @@
beforeunloadHandler() {
this.sseSource.close();
},
+ alarmNotifyChannge(){
+ this.setAlarmSwitchStatus()
+ this.sseControl()
+ },
sseControl() {
let that = this;
if (this.alarmNotify) {
@@ -90,31 +107,35 @@
}
}, false);
} else {
- this.sseSource.removeEventListener('open', null);
- this.sseSource.removeEventListener('message', null);
- this.sseSource.removeEventListener('error', null);
- this.sseSource.close();
+ if (this.sseSource != null) {
+ this.sseSource.removeEventListener('open', null);
+ this.sseSource.removeEventListener('message', null);
+ this.sseSource.removeEventListener('error', null);
+ this.sseSource.close();
+ }
+
}
+ },
+ getAlarmSwitchStatus(){
+ if (localStorage.getItem("alarmSwitchStatus") == null) {
+ localStorage.setItem("alarmSwitchStatus", false);
+ }
+ return localStorage.getItem("alarmSwitchStatus");
+ },
+ setAlarmSwitchStatus(){
+ localStorage.setItem("alarmSwitchStatus", this.alarmNotify);
}
- },
- created(){
- if (this.$route.path.startsWith("/channelList")){
- this.activeIndex = "/deviceList"
- }
- },
- mounted() {
- window.addEventListener('beforeunload', e => this.beforeunloadHandler(e))
- // window.addEventListener('unload', e => this.unloadHandler(e))
- this.sseControl();
},
destroyed() {
window.removeEventListener('beforeunload', e => this.beforeunloadHandler(e))
- this.sseSource.removeEventListener('open', null);
- this.sseSource.removeEventListener('message', null);
- this.sseSource.removeEventListener('error', null);
- this.sseSource.close();
- // window.removeEventListener('unload', e => this.unloadHandler(e))
+ if (this.sseSource != null) {
+ this.sseSource.removeEventListener('open', null);
+ this.sseSource.removeEventListener('message', null);
+ this.sseSource.removeEventListener('error', null);
+ this.sseSource.close();
+ }
},
+
}
</script>
--
Gitblit v1.8.0