scene-edit.vue 1.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. <template>
  2. <template v-if="loaded">
  3. <Header></Header>
  4. <LeftPano>
  5. <SceneList :current="currentModel" @update:current="loadModel" />
  6. </LeftPano>
  7. <router-view v-slot="{ Component }">
  8. <!-- <keep-alive> -->
  9. <component :is="Component" />
  10. <!-- </keep-alive> -->
  11. </router-view>
  12. </template>
  13. </template>
  14. <script setup lang="ts">
  15. import Header from "./header/index.vue";
  16. import SceneList from "../scene-list/index.vue";
  17. import { LeftPano } from "@/layout";
  18. import { custom } from "@/env";
  19. import { onMounted, ref } from "vue";
  20. import { currentModel, loadModel, fuseModel } from "@/model";
  21. import { initialFuseModels, initialScenes } from "@/store";
  22. import { asyncTimeout } from "@/utils";
  23. const loaded = ref(false);
  24. const initialSys = async () => {
  25. await Promise.all([initialFuseModels(), initialScenes()]);
  26. await loadModel(fuseModel);
  27. await asyncTimeout(1000);
  28. loaded.value = true;
  29. };
  30. initialSys();
  31. custom.showLeftPano = true;
  32. </script>
  33. <style>
  34. :root {
  35. --editor-menu-width: 0px;
  36. }
  37. </style>