general.uvue 990 B

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. <template>
  2. <cl-page>
  3. <view class="p-3">
  4. <cl-list>
  5. <cl-list-item :label="t('深色模式')">
  6. <cl-switch :model-value="isDark" @change="onThemeChange"></cl-switch>
  7. </cl-list-item>
  8. <cl-list-item :label="t('多语言')" arrow hoverable @tap="setLocale"> </cl-list-item>
  9. <cl-list-item :label="t('字体大小')" arrow hoverable @tap="setSize"> </cl-list-item>
  10. </cl-list>
  11. </view>
  12. <!-- 语言设置 -->
  13. <locale-set :ref="refs.set('localeSet')"></locale-set>
  14. <!-- 字体大小设置 -->
  15. <size-set :ref="refs.set('sizeSet')"></size-set>
  16. </cl-page>
  17. </template>
  18. <script setup lang="ts">
  19. import { isDark, toggleTheme, useRefs } from "@/cool";
  20. import { t } from "@/locale";
  21. import LocaleSet from "@/components/locale-set.uvue";
  22. import SizeSet from "@/components/size-set.uvue";
  23. const refs = useRefs();
  24. function onThemeChange() {
  25. toggleTheme();
  26. }
  27. function setLocale() {
  28. refs.open("localeSet");
  29. }
  30. function setSize() {
  31. refs.open("sizeSet");
  32. }
  33. </script>