mirror of
https://codeup.aliyun.com/67762337eccfc218f6110e0e/vue/fe-manage.git
synced 2025-12-07 01:46:43 +08:00
Merge remote-tracking branch 'origin/develop' into develop
This commit is contained in:
31
src/App.vue
31
src/App.vue
@@ -19,9 +19,9 @@
|
||||
</div>
|
||||
</template>
|
||||
<script>
|
||||
import { computed, defineComponent, ref } from "vue";
|
||||
import { computed, defineComponent, ref, onMounted } from "vue";
|
||||
import { useRouter, useRoute } from "vue-router";
|
||||
import { useStore } from "vuex";
|
||||
import { useStore, createStore } from "vuex";
|
||||
import NavLeft from "@/components/NavLeft";
|
||||
import NavTop from "@/components/NavTop";
|
||||
import OpenPages from "@/components/OpenPages";
|
||||
@@ -71,6 +71,31 @@ export default defineComponent({
|
||||
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() {
|
||||
const list = localStorage.getItem("memberInitInfo");
|
||||
if (list) {
|
||||
@@ -124,7 +149,7 @@ export default defineComponent({
|
||||
name: currentRouteName,
|
||||
zhCN,
|
||||
};
|
||||
},
|
||||
}
|
||||
});
|
||||
</script>
|
||||
<style lang="scss">
|
||||
|
||||
@@ -63,12 +63,16 @@ import DownLoad from "../components/drawers/DownLoad";
|
||||
import * as api from "../api/index1";
|
||||
import { studentUrl } from "../api/method";
|
||||
import router from "@/router";
|
||||
import { useStore, createStore } from "vuex";
|
||||
|
||||
export default {
|
||||
name: "NavTop",
|
||||
components: {
|
||||
DownLoad,
|
||||
},
|
||||
setup() {
|
||||
const store = useStore();
|
||||
|
||||
const state = reactive({
|
||||
selectRole: "管理员",
|
||||
username: "",
|
||||
@@ -120,6 +124,9 @@ export default {
|
||||
getUser();
|
||||
|
||||
const logOut = () => {
|
||||
|
||||
store.replaceState(createStore({state: {openpages:null}}).state);
|
||||
|
||||
localStorage.removeItem("faceclassPic");
|
||||
localStorage.removeItem("faceclassClass");
|
||||
localStorage.removeItem("faceclassScene");
|
||||
@@ -138,7 +145,12 @@ export default {
|
||||
localStorage.removeItem("projectId");
|
||||
localStorage.removeItem("projectTemplateId");
|
||||
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 {
|
||||
...toRefs(state),
|
||||
|
||||
@@ -51,7 +51,7 @@ export default {
|
||||
const store = useStore();
|
||||
const $router = useRouter();
|
||||
const state = reactive({
|
||||
//openList: store.state.openpages,
|
||||
openList: store.state.openpages,
|
||||
});
|
||||
|
||||
const closePage = (value) => {
|
||||
@@ -92,7 +92,7 @@ export default {
|
||||
<style lang="scss">
|
||||
.openPages {
|
||||
width: 100%;
|
||||
// height: 50px;
|
||||
height: 50px;
|
||||
display: flex;
|
||||
background-color: rgba(255, 255, 255, 1);
|
||||
box-shadow: 0px 8px 8px 0px rgba(118, 136, 166, 0.1);
|
||||
|
||||
Reference in New Issue
Block a user