|
|
@ -1,13 +1,37 @@ |
|
|
|
<template> |
|
|
|
<page-login v-if="null === appStore.accessToken" /> |
|
|
|
<page-engineering v-else-if="'engineering' === appStore.accessToken" /> |
|
|
|
<page-main v-else /> |
|
|
|
<template v-if="ready"> |
|
|
|
<page-login v-if="null === appStore.accessToken" /> |
|
|
|
<page-engineering v-else-if="'engineering' === appStore.accessToken" /> |
|
|
|
<page-main v-else /> |
|
|
|
</template> |
|
|
|
</template> |
|
|
|
<script setup> |
|
|
|
import PageMain from './pages/main/Page.vue' |
|
|
|
import PageLogin from './pages/login/Page.vue' |
|
|
|
import PageEngineering from './pages/engineering/Page.vue' |
|
|
|
import { useAppStore } from '@/stores/AppStore'; |
|
|
|
import { ref, onMounted } from 'vue'; |
|
|
|
/** @var {AppStore} */ |
|
|
|
const appStore = useAppStore(); |
|
|
|
/** @var {Ref<boolean>} */ |
|
|
|
const ready = ref(false); |
|
|
|
// on mounted |
|
|
|
onMounted(mounted); |
|
|
|
|
|
|
|
// mounted |
|
|
|
function mounted() { |
|
|
|
let accessToken = window.localStorage.getItem('accessToken'); |
|
|
|
accessToken = accessToken ? accessToken : null; |
|
|
|
appStore.setAccessToken(accessToken); |
|
|
|
ready.value = true; |
|
|
|
|
|
|
|
window.onbeforeunload = function() { |
|
|
|
return "确定要离开吗?"; |
|
|
|
} |
|
|
|
} |
|
|
|
</script> |
|
|
|
<style> |
|
|
|
body { |
|
|
|
overscroll-behavior-y: contain; |
|
|
|
} |
|
|
|
</style> |