多维表格
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

71 lines
1.2 KiB

<script setup lang="ts">
import { watch } from 'vue'
import useProject from '~/composables/useProject'
import useTabs from '~/composables/useTabs'
const route = useRoute()
const { loadProject, loadTables } = useProject()
const { clearTabs } = useTabs()
onMounted(async () => {
await loadProject(route.params.projectId as string)
await loadTables()
})
watch(
() => route.params.projectId,
async (newVal, oldVal) => {
if (newVal !== oldVal) {
clearTabs()
if (newVal) {
await loadProject(newVal as string)
await loadTables()
}
}
},
)
</script>
<template>
<NuxtLayout>
<template #sidebar>
<v-navigation-drawer permanent>
<DashboardTreeView />
</v-navigation-drawer>
</template>
<v-container>
<DashboardTabView />
</v-container>
</NuxtLayout>
</template>
<style scoped lang="scss">
.nc-container {
.nc-topbar {
position: fixed;
top: 0;
left: 0;
height: 50px;
width: 100%;
z-index: 5;
}
.nc-sidebar {
position: fixed;
top: 50px;
left: 0;
height: calc(100% - 50px);
width: 250px;
}
.nc-content {
position: fixed;
top: 50px;
left: 250px;
height: calc(100% - 50px);
width: calc(100% - 250px);
}
}
</style>