mirror of
https://github.com/nagisa77/OpenIsle.git
synced 2026-02-23 14:40:49 +08:00
50 lines
1.0 KiB
Vue
50 lines
1.0 KiB
Vue
<template>
|
|
<div id="app">
|
|
<HeaderComponent
|
|
@toggle-menu="menuVisible = !menuVisible"
|
|
:show-menu-btn="!hideMenu"
|
|
/>
|
|
|
|
<div class="main-container">
|
|
<MenuComponent
|
|
:visible="!hideMenu && menuVisible"
|
|
@item-click="menuVisible = false"
|
|
/>
|
|
<div class="content">
|
|
<router-view />
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</template>
|
|
|
|
<script>
|
|
import HeaderComponent from './components/HeaderComponent.vue'
|
|
import MenuComponent from './components/MenuComponent.vue'
|
|
|
|
export default {
|
|
name: 'App',
|
|
components: { HeaderComponent, MenuComponent },
|
|
data() {
|
|
return { menuVisible: window.innerWidth > 768 }
|
|
},
|
|
computed: {
|
|
hideMenu() {
|
|
return ['/login', '/signup', '/404', '/signup-reason', '/github-callback', '/twitter-callback', '/discord-callback'].includes(this.$route.path)
|
|
}
|
|
}
|
|
}
|
|
</script>
|
|
|
|
<style>
|
|
.content {
|
|
flex: 1;
|
|
}
|
|
.main-container {
|
|
display: flex;
|
|
flex-direction: row;
|
|
max-width: var(--page-max-width);
|
|
margin: 0 auto;
|
|
}
|
|
|
|
</style>
|