App.vue 790 B

12345678910111213141516171819202122232425262728293031323334353637383940
  1. <template>
  2. <Editor v-if="!screening" />
  3. <Screen v-else />
  4. </template>
  5. <script lang="ts">
  6. import { computed, defineComponent, onMounted } from 'vue'
  7. import { useStore } from 'vuex'
  8. import { MutationTypes, ActionTypes, State } from '@/store'
  9. import Editor from './views/Editor/index.vue'
  10. import Screen from './views/Screen/index.vue'
  11. export default defineComponent({
  12. name: 'app',
  13. components: {
  14. Editor,
  15. Screen,
  16. },
  17. setup() {
  18. const store = useStore<State>()
  19. const screening = computed(() => store.state.screening)
  20. onMounted(() => {
  21. store.commit(MutationTypes.SET_AVAILABLE_FONTS)
  22. store.dispatch(ActionTypes.INIT_SNAPSHOT_DATABASE)
  23. })
  24. return {
  25. screening,
  26. }
  27. },
  28. })
  29. </script>
  30. <style lang="scss">
  31. #app {
  32. height: 100%;
  33. }
  34. </style>