|
@@ -75,6 +75,12 @@
|
|
|
<el-switch v-model="isDark" class="drawer-switch" @change="toggleDark" />
|
|
<el-switch v-model="isDark" class="drawer-switch" @change="toggleDark" />
|
|
|
</span>
|
|
</span>
|
|
|
</div>
|
|
</div>
|
|
|
|
|
+ <div class="drawer-item">
|
|
|
|
|
+ <span>页面圆角</span>
|
|
|
|
|
+ <span class="comp-style">
|
|
|
|
|
+ <el-slider v-model="radiusBase" :min="0" :max="32" :step="2" style="width: 120px" @change="radiusBaseChange" />
|
|
|
|
|
+ </span>
|
|
|
|
|
+ </div>
|
|
|
|
|
|
|
|
<el-divider />
|
|
<el-divider />
|
|
|
|
|
|
|
@@ -143,6 +149,7 @@ const sideTheme = ref(settingsStore.sideTheme);
|
|
|
const storeSettings = computed(() => settingsStore);
|
|
const storeSettings = computed(() => settingsStore);
|
|
|
const predefineColors = ref(['#409EFF', '#ff4500', '#ff8c00', '#ffd700', '#90ee90', '#00ced1', '#1e90ff', '#c71585']);
|
|
const predefineColors = ref(['#409EFF', '#ff4500', '#ff8c00', '#ffd700', '#90ee90', '#00ced1', '#1e90ff', '#c71585']);
|
|
|
const navType = ref(settingsStore.navType);
|
|
const navType = ref(settingsStore.navType);
|
|
|
|
|
+const radiusBase = ref(settingsStore.radiusBase);
|
|
|
// 是否暗黑模式
|
|
// 是否暗黑模式
|
|
|
const isDark = useDark({
|
|
const isDark = useDark({
|
|
|
storageKey: 'useDarkKey',
|
|
storageKey: 'useDarkKey',
|
|
@@ -190,6 +197,10 @@ const themeChange = (val: string) => {
|
|
|
settingsStore.theme = val;
|
|
settingsStore.theme = val;
|
|
|
handleThemeStyle(val);
|
|
handleThemeStyle(val);
|
|
|
};
|
|
};
|
|
|
|
|
+const radiusBaseChange = (val: number) => {
|
|
|
|
|
+ settingsStore.radiusBase = val;
|
|
|
|
|
+ document.documentElement.style.setProperty('--app-radius-base', `${val}px`);
|
|
|
|
|
+};
|
|
|
const handleTheme = (val: string) => {
|
|
const handleTheme = (val: string) => {
|
|
|
sideTheme.value = val;
|
|
sideTheme.value = val;
|
|
|
if (isDark.value && val === SideThemeEnum.LIGHT) {
|
|
if (isDark.value && val === SideThemeEnum.LIGHT) {
|
|
@@ -210,6 +221,7 @@ const saveSetting = () => {
|
|
|
settings.value.sideTheme = storeSettings.value.sideTheme;
|
|
settings.value.sideTheme = storeSettings.value.sideTheme;
|
|
|
settings.value.theme = storeSettings.value.theme;
|
|
settings.value.theme = storeSettings.value.theme;
|
|
|
settings.value.navType = storeSettings.value.navType;
|
|
settings.value.navType = storeSettings.value.navType;
|
|
|
|
|
+ settings.value.radiusBase = storeSettings.value.radiusBase;
|
|
|
setTimeout(() => {
|
|
setTimeout(() => {
|
|
|
proxy?.$modal.closeLoading();
|
|
proxy?.$modal.closeLoading();
|
|
|
}, 1000);
|
|
}, 1000);
|
|
@@ -223,6 +235,10 @@ const openSetting = () => {
|
|
|
showSettings.value = true;
|
|
showSettings.value = true;
|
|
|
};
|
|
};
|
|
|
|
|
|
|
|
|
|
+onMounted(() => {
|
|
|
|
|
+ radiusBaseChange(storeSettings.value.radiusBase);
|
|
|
|
|
+});
|
|
|
|
|
+
|
|
|
defineExpose({
|
|
defineExpose({
|
|
|
openSetting
|
|
openSetting
|
|
|
});
|
|
});
|