Skip to content

Commit d83f43f

Browse files
committed
refactor: ♻️ 增加语言和布局大小枚举类型
1 parent 274b6a3 commit d83f43f

File tree

6 files changed

+51
-12
lines changed

6 files changed

+51
-12
lines changed

src/App.vue

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -18,14 +18,13 @@
1818
import { useAppStore, useSettingsStore } from "@/store";
1919
import defaultSettings from "@/settings";
2020
import { ThemeEnum } from "@/enums/ThemeEnum";
21+
import { SizeEnum } from "@/enums/SizeEnum";
2122
2223
const appStore = useAppStore();
2324
const settingsStore = useSettingsStore();
2425
2526
const locale = computed(() => appStore.locale);
26-
const size = computed(
27-
() => appStore.size as "default" | "small" | "large" | undefined
28-
);
27+
const size = computed(() => appStore.size as SizeEnum);
2928
const watermarkEnabled = computed(() => settingsStore.watermarkEnabled);
3029
3130
// 明亮/暗黑主题水印字体颜色适配

src/components/LangSelect/index.vue

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@
2121
<script setup lang="ts">
2222
import { useI18n } from "vue-i18n";
2323
import { useAppStore } from "@/store/modules/app";
24+
import { LanguageEnum } from "@/enums/LanguageEnum";
2425
2526
defineProps({
2627
size: {
@@ -30,8 +31,8 @@ defineProps({
3031
});
3132
3233
const langOptions = [
33-
{ label: "中文", value: "zh-cn" },
34-
{ label: "English", value: "en" },
34+
{ label: "中文", value: LanguageEnum.ZH_CN },
35+
{ label: "English", value: LanguageEnum.EN },
3536
];
3637
3738
const appStore = useAppStore();

src/components/SizeSelect/index.vue

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -19,14 +19,15 @@
1919
</template>
2020

2121
<script setup lang="ts">
22+
import { SizeEnum } from "@/enums/SizeEnum";
2223
import { useAppStore } from "@/store/modules/app";
2324
2425
const { t } = useI18n();
2526
const sizeOptions = computed(() => {
2627
return [
27-
{ label: t("sizeSelect.default"), value: "default" },
28-
{ label: t("sizeSelect.large"), value: "large" },
29-
{ label: t("sizeSelect.small"), value: "small" },
28+
{ label: t("sizeSelect.default"), value: SizeEnum.DEFAULT },
29+
{ label: t("sizeSelect.large"), value: SizeEnum.LARGE },
30+
{ label: t("sizeSelect.small"), value: SizeEnum.SMALL },
3031
];
3132
});
3233

src/enums/LanguageEnum.ts

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
/**
2+
* 语言枚举
3+
*/
4+
export const enum LanguageEnum {
5+
/**
6+
* 中文
7+
*/
8+
ZH_CN = "zh-cn",
9+
10+
/**
11+
* 英文
12+
*/
13+
EN = "en",
14+
}

src/enums/SizeEnum.ts

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
/**
2+
* 布局大小枚举
3+
*/
4+
export const enum SizeEnum {
5+
/**
6+
* 默认
7+
*/
8+
DEFAULT = "default",
9+
10+
/**
11+
* 大型
12+
*/
13+
LARGE = "large",
14+
15+
/**
16+
* 小型
17+
*/
18+
SMALL = "small",
19+
}

src/settings.ts

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,8 @@
1+
import { SizeEnum } from "./enums/SizeEnum";
2+
import { LayoutEnum } from "./enums/LayoutEnum";
3+
import { ThemeEnum } from "./enums/ThemeEnum";
4+
import { LanguageEnum } from "./enums/LanguageEnum";
5+
16
const { pkg } = __APP_INFO__;
27

38
const defaultSettings: AppSettings = {
@@ -7,10 +12,10 @@ const defaultSettings: AppSettings = {
712
tagsView: true,
813
fixedHeader: true,
914
sidebarLogo: true,
10-
layout: "left",
11-
theme: "light",
12-
size: "default",
13-
language: "zh-cn",
15+
layout: LayoutEnum.LEFT,
16+
theme: ThemeEnum.LIGHT,
17+
size: SizeEnum.DEFAULT,
18+
language: LanguageEnum.ZH_CN,
1419
themeColor: "#409EFF",
1520
watermarkEnabled: false,
1621
watermarkContent: pkg.name,

0 commit comments

Comments
 (0)