App.vue 767 B

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. <template>
  2. <router-view class="app" :class="{ grey__mode: greyMode }" />
  3. </template>
  4. <script setup lang="ts" name="App">
  5. import { computed } from 'vue'
  6. import { useAppStore } from '@/store/modules/app'
  7. const appStore = useAppStore()
  8. const greyMode = computed(() => appStore.getGreyMode)
  9. </script>
  10. <style lang="less">
  11. .size {
  12. width: 100;
  13. height: 100%;
  14. min-width: var(--content-min-width);
  15. }
  16. html,
  17. body {
  18. .size;
  19. padding: 0;
  20. margin: 0;
  21. }
  22. #app {
  23. .size;
  24. background: var(--app-background-color);
  25. }
  26. .grey__mode {
  27. -webkit-filter: grayscale(100%);
  28. -moz-filter: grayscale(100%);
  29. -ms-filter: grayscale(100%);
  30. -o-filter: grayscale(100%);
  31. filter: grayscale(100%);
  32. filter: progid:dximagetransform.microsoft.basicimage(grayscale=1);
  33. }
  34. </style>