Merge remote-tracking branch 'origin/develop' into develop

This commit is contained in:
yuping
2023-01-12 17:36:56 +08:00
3 changed files with 44 additions and 7 deletions

View File

@@ -19,9 +19,9 @@
</div> </div>
</template> </template>
<script> <script>
import { computed, defineComponent, ref } from "vue"; import { computed, defineComponent, ref, onMounted } from "vue";
import { useRouter, useRoute } from "vue-router"; import { useRouter, useRoute } from "vue-router";
import { useStore } from "vuex"; import { useStore, createStore } from "vuex";
import NavLeft from "@/components/NavLeft"; import NavLeft from "@/components/NavLeft";
import NavTop from "@/components/NavTop"; import NavTop from "@/components/NavTop";
import OpenPages from "@/components/OpenPages"; import OpenPages from "@/components/OpenPages";
@@ -71,6 +71,31 @@ export default defineComponent({
getOrgTree(); getOrgTree();
} }
// 监听关闭浏览器
let time1 = ref(0);
let time2 = ref(0);
//添加监听事件
function beforeunloadHandler() {
time1.value = new Date().getTime();
// e.returnValue = '关闭提示';
}
function unloadHandler() {
time2.value = new Date().getTime() - time1.value;
if(time2.value<=5){
store.replaceState(createStore({state: {openpages:null}}).state);
localStorage.removeItem("openpages");
}
}
onMounted(()=>{
window.addEventListener('beforeunload', e => beforeunloadHandler(e));
window.addEventListener('unload', e => unloadHandler(e));
})
async function getMemberInfo() { async function getMemberInfo() {
const list = localStorage.getItem("memberInitInfo"); const list = localStorage.getItem("memberInitInfo");
if (list) { if (list) {
@@ -124,7 +149,7 @@ export default defineComponent({
name: currentRouteName, name: currentRouteName,
zhCN, zhCN,
}; };
}, }
}); });
</script> </script>
<style lang="scss"> <style lang="scss">

View File

@@ -63,12 +63,16 @@ import DownLoad from "../components/drawers/DownLoad";
import * as api from "../api/index1"; import * as api from "../api/index1";
import { studentUrl } from "../api/method"; import { studentUrl } from "../api/method";
import router from "@/router"; import router from "@/router";
import { useStore, createStore } from "vuex";
export default { export default {
name: "NavTop", name: "NavTop",
components: { components: {
DownLoad, DownLoad,
}, },
setup() { setup() {
const store = useStore();
const state = reactive({ const state = reactive({
selectRole: "管理员", selectRole: "管理员",
username: "", username: "",
@@ -120,6 +124,9 @@ export default {
getUser(); getUser();
const logOut = () => { const logOut = () => {
store.replaceState(createStore({state: {openpages:null}}).state);
localStorage.removeItem("faceclassPic"); localStorage.removeItem("faceclassPic");
localStorage.removeItem("faceclassClass"); localStorage.removeItem("faceclassClass");
localStorage.removeItem("faceclassScene"); localStorage.removeItem("faceclassScene");
@@ -138,7 +145,12 @@ export default {
localStorage.removeItem("projectId"); localStorage.removeItem("projectId");
localStorage.removeItem("projectTemplateId"); localStorage.removeItem("projectTemplateId");
localStorage.removeItem("orgtreeList"); localStorage.removeItem("orgtreeList");
process.env.NODE_ENV === 'development' ? router.push({path: 'login'}) : (window.location.href = process.env.VUE_APP_LOGIN_URL) process.env.NODE_ENV === 'development' ? router.push({path: '/learningpath'}) : (window.location.href = process.env.VUE_APP_LOGIN_URL)
if(process.env.NODE_ENV === 'development'){
setTimeout(() => {
window.location.reload();
}, 3000);
}
}; };
return { return {
...toRefs(state), ...toRefs(state),

View File

@@ -51,12 +51,12 @@ export default {
const store = useStore(); const store = useStore();
const $router = useRouter(); const $router = useRouter();
const state = reactive({ const state = reactive({
//openList: store.state.openpages, openList: store.state.openpages,
}); });
const closePage = (value) => { const closePage = (value) => {
console.log("点击关闭页面", value, state.openList); console.log("点击关闭页面", value, state.openList);
state.openList.map((item, key) => { state.openList.map((item, key) => {
if (item.href === value.href) { if (item.href === value.href) {
if (state.openList.length === 1) { if (state.openList.length === 1) {
@@ -92,7 +92,7 @@ export default {
<style lang="scss"> <style lang="scss">
.openPages { .openPages {
width: 100%; width: 100%;
// height: 50px; height: 50px;
display: flex; display: flex;
background-color: rgba(255, 255, 255, 1); background-color: rgba(255, 255, 255, 1);
box-shadow: 0px 8px 8px 0px rgba(118, 136, 166, 0.1); box-shadow: 0px 8px 8px 0px rgba(118, 136, 166, 0.1);