App.tsx 1.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940
  1. import { computed, defineComponent } from 'vue';
  2. import { NConfigProvider, zhCN, dateZhCN } from 'naive-ui';
  3. import { AppProvider } from './components/Application';
  4. import { RouterView } from 'vue-router';
  5. import setting from './settings/designSetting';
  6. import { lighten } from './utils';
  7. export default defineComponent({
  8. name: 'App',
  9. setup() {
  10. const getThemeOverrides = computed(() => {
  11. const appTheme = setting.appTheme;
  12. const lightenStr = lighten(setting.appTheme, 6);
  13. return {
  14. common: {
  15. primaryColor: appTheme,
  16. primaryColorHover: lightenStr,
  17. primaryColorPressed: lightenStr
  18. },
  19. LoadingBar: {
  20. colorLoading: appTheme
  21. }
  22. };
  23. });
  24. return () => (
  25. <>
  26. <NConfigProvider
  27. locale={zhCN}
  28. themeOverrides={getThemeOverrides.value}
  29. // :theme="getDarkTheme"
  30. // :theme-overrides="getThemeOverrides"
  31. dateLocale={dateZhCN}>
  32. <AppProvider>
  33. <RouterView />
  34. {/* <RouterError /> */}
  35. </AppProvider>
  36. </NConfigProvider>
  37. </>
  38. );
  39. }
  40. });