refactor: ♻️ 增加语言和布局大小枚举类型
This commit is contained in:
@@ -18,14 +18,13 @@
|
|||||||
import { useAppStore, useSettingsStore } from "@/store";
|
import { useAppStore, useSettingsStore } from "@/store";
|
||||||
import defaultSettings from "@/settings";
|
import defaultSettings from "@/settings";
|
||||||
import { ThemeEnum } from "@/enums/ThemeEnum";
|
import { ThemeEnum } from "@/enums/ThemeEnum";
|
||||||
|
import { SizeEnum } from "@/enums/SizeEnum";
|
||||||
|
|
||||||
const appStore = useAppStore();
|
const appStore = useAppStore();
|
||||||
const settingsStore = useSettingsStore();
|
const settingsStore = useSettingsStore();
|
||||||
|
|
||||||
const locale = computed(() => appStore.locale);
|
const locale = computed(() => appStore.locale);
|
||||||
const size = computed(
|
const size = computed(() => appStore.size as SizeEnum);
|
||||||
() => appStore.size as "default" | "small" | "large" | undefined
|
|
||||||
);
|
|
||||||
const watermarkEnabled = computed(() => settingsStore.watermarkEnabled);
|
const watermarkEnabled = computed(() => settingsStore.watermarkEnabled);
|
||||||
|
|
||||||
// 明亮/暗黑主题水印字体颜色适配
|
// 明亮/暗黑主题水印字体颜色适配
|
||||||
|
|||||||
@@ -21,6 +21,7 @@
|
|||||||
<script setup lang="ts">
|
<script setup lang="ts">
|
||||||
import { useI18n } from "vue-i18n";
|
import { useI18n } from "vue-i18n";
|
||||||
import { useAppStore } from "@/store/modules/app";
|
import { useAppStore } from "@/store/modules/app";
|
||||||
|
import { LanguageEnum } from "@/enums/LanguageEnum";
|
||||||
|
|
||||||
defineProps({
|
defineProps({
|
||||||
size: {
|
size: {
|
||||||
@@ -30,8 +31,8 @@ defineProps({
|
|||||||
});
|
});
|
||||||
|
|
||||||
const langOptions = [
|
const langOptions = [
|
||||||
{ label: "中文", value: "zh-cn" },
|
{ label: "中文", value: LanguageEnum.ZH_CN },
|
||||||
{ label: "English", value: "en" },
|
{ label: "English", value: LanguageEnum.EN },
|
||||||
];
|
];
|
||||||
|
|
||||||
const appStore = useAppStore();
|
const appStore = useAppStore();
|
||||||
|
|||||||
@@ -19,14 +19,15 @@
|
|||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script setup lang="ts">
|
<script setup lang="ts">
|
||||||
|
import { SizeEnum } from "@/enums/SizeEnum";
|
||||||
import { useAppStore } from "@/store/modules/app";
|
import { useAppStore } from "@/store/modules/app";
|
||||||
|
|
||||||
const { t } = useI18n();
|
const { t } = useI18n();
|
||||||
const sizeOptions = computed(() => {
|
const sizeOptions = computed(() => {
|
||||||
return [
|
return [
|
||||||
{ label: t("sizeSelect.default"), value: "default" },
|
{ label: t("sizeSelect.default"), value: SizeEnum.DEFAULT },
|
||||||
{ label: t("sizeSelect.large"), value: "large" },
|
{ label: t("sizeSelect.large"), value: SizeEnum.LARGE },
|
||||||
{ label: t("sizeSelect.small"), value: "small" },
|
{ label: t("sizeSelect.small"), value: SizeEnum.SMALL },
|
||||||
];
|
];
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|||||||
14
src/enums/LanguageEnum.ts
Normal file
14
src/enums/LanguageEnum.ts
Normal file
@@ -0,0 +1,14 @@
|
|||||||
|
/**
|
||||||
|
* 语言枚举
|
||||||
|
*/
|
||||||
|
export const enum LanguageEnum {
|
||||||
|
/**
|
||||||
|
* 中文
|
||||||
|
*/
|
||||||
|
ZH_CN = "zh-cn",
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 英文
|
||||||
|
*/
|
||||||
|
EN = "en",
|
||||||
|
}
|
||||||
19
src/enums/SizeEnum.ts
Normal file
19
src/enums/SizeEnum.ts
Normal file
@@ -0,0 +1,19 @@
|
|||||||
|
/**
|
||||||
|
* 布局大小枚举
|
||||||
|
*/
|
||||||
|
export const enum SizeEnum {
|
||||||
|
/**
|
||||||
|
* 默认
|
||||||
|
*/
|
||||||
|
DEFAULT = "default",
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 大型
|
||||||
|
*/
|
||||||
|
LARGE = "large",
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 小型
|
||||||
|
*/
|
||||||
|
SMALL = "small",
|
||||||
|
}
|
||||||
@@ -1,3 +1,8 @@
|
|||||||
|
import { SizeEnum } from "./enums/SizeEnum";
|
||||||
|
import { LayoutEnum } from "./enums/LayoutEnum";
|
||||||
|
import { ThemeEnum } from "./enums/ThemeEnum";
|
||||||
|
import { LanguageEnum } from "./enums/LanguageEnum";
|
||||||
|
|
||||||
const { pkg } = __APP_INFO__;
|
const { pkg } = __APP_INFO__;
|
||||||
|
|
||||||
const defaultSettings: AppSettings = {
|
const defaultSettings: AppSettings = {
|
||||||
@@ -7,10 +12,10 @@ const defaultSettings: AppSettings = {
|
|||||||
tagsView: true,
|
tagsView: true,
|
||||||
fixedHeader: true,
|
fixedHeader: true,
|
||||||
sidebarLogo: true,
|
sidebarLogo: true,
|
||||||
layout: "left",
|
layout: LayoutEnum.LEFT,
|
||||||
theme: "light",
|
theme: ThemeEnum.LIGHT,
|
||||||
size: "default",
|
size: SizeEnum.DEFAULT,
|
||||||
language: "zh-cn",
|
language: LanguageEnum.ZH_CN,
|
||||||
themeColor: "#409EFF",
|
themeColor: "#409EFF",
|
||||||
watermarkEnabled: false,
|
watermarkEnabled: false,
|
||||||
watermarkContent: pkg.name,
|
watermarkContent: pkg.name,
|
||||||
|
|||||||
Reference in New Issue
Block a user