diff --git a/package.json b/package.json
index 95cd2a1..c3eb2b4 100644
--- a/package.json
+++ b/package.json
@@ -18,19 +18,19 @@
"url": "https://gitee.com/JavaLionLi/plus-ui.git"
},
"dependencies": {
- "@element-plus/icons-vue": "2.1.0",
+ "@element-plus/icons-vue": "2.3.1",
"@vueup/vue-quill": "1.2.0",
"@vueuse/core": "10.7.0",
"animate.css": "4.1.1",
"await-to-js": "^3.0.0",
"axios": "^1.3.4",
"crypto-js": "^4.1.1",
- "echarts": "5.4.0",
+ "echarts": "5.4.3",
"element-plus": "2.4.3",
"file-saver": "2.0.5",
"fuse.js": "6.6.2",
- "js-cookie": "3.0.1",
- "jsencrypt": "3.3.1",
+ "js-cookie": "3.0.5",
+ "jsencrypt": "3.3.2",
"nprogress": "0.2.0",
"path-browserify": "1.0.1",
"path-to-regexp": "6.2.0",
@@ -38,7 +38,7 @@
"screenfull": "6.0.0",
"vform3-builds": "3.0.8",
"vue": "3.3.11",
- "vue-cropper": "1.0.3",
+ "vue-cropper": "1.1.1",
"vue-i18n": "9.2.2",
"vue-router": "4.2.5",
"vue-types": "5.1.1"
@@ -57,7 +57,7 @@
"@unocss/preset-attributify": "^0.58.0",
"@unocss/preset-icons": "^0.58.0",
"@unocss/preset-uno": "^0.58.0",
- "@vue/compiler-sfc": "3.2.45",
+ "@vue/compiler-sfc": "3.3.9",
"@vitejs/plugin-vue": "4.5.2",
"autoprefixer": "10.4.14",
"eslint": "8.55.0",
@@ -72,13 +72,13 @@
"husky": "7.0.4",
"postcss": "^8.4.21",
"prettier": "3.1.1",
- "sass": "1.56.1",
+ "sass": "1.69.5",
"typescript": "5.2.2",
"unocss": "^0.58.0",
"unplugin-auto-import": "0.17.2",
"unplugin-icons": "0.18.1",
"unplugin-vue-components": "0.26.0",
- "unplugin-vue-setup-extend-plus": "0.4.9",
+ "unplugin-vue-setup-extend-plus": "1.0.0",
"vite-plugin-compression": "0.5.1",
"vite-plugin-svg-icons": "2.0.1",
"vitest": "^0.29.7",
diff --git a/src/layout/components/Settings/index.vue b/src/layout/components/Settings/index.vue
index c748998..7bfc35a 100644
--- a/src/layout/components/Settings/index.vue
+++ b/src/layout/components/Settings/index.vue
@@ -48,35 +48,35 @@
开启 TopNav
-
+
开启 Tags-Views
-
+
固定 Header
-
+
显示 Logo
-
+
动态标题
-
+
@@ -93,7 +93,6 @@ import useAppStore from '@/store/modules/app';
import useSettingsStore from '@/store/modules/settings';
import usePermissionStore from '@/store/modules/permission';
import { handleThemeStyle } from '@/utils/theme';
-import { SettingTypeEnum } from '@/enums/SettingTypeEnum';
import { SideThemeEnum } from '@/enums/SideThemeEnum';
const { proxy } = getCurrentInstance() as ComponentInternalInstance;
@@ -113,72 +112,40 @@ const isDark = useDark({
valueDark: 'dark',
valueLight: 'light'
});
+// 匹配菜单颜色
watch(isDark, () => {
if (isDark.value) {
- settingsStore.changeSetting({ key: SettingTypeEnum.SIDE_THEME, value: SideThemeEnum.DARK });
+ settingsStore.sideTheme = SideThemeEnum.DARK;
} else {
- settingsStore.changeSetting({ key: SettingTypeEnum.SIDE_THEME, value: sideTheme.value });
+ settingsStore.sideTheme = sideTheme.value;
}
});
const toggleDark = () => useToggle(isDark);
-/** 是否需要topNav */
-const topNav = computed({
- get: () => storeSettings.value.topNav,
- set: (val) => {
- settingsStore.changeSetting({ key: SettingTypeEnum.TOP_NAV, value: val });
- if (!val) {
- appStore.toggleSideBarHide(false);
- permissionStore.setSidebarRouters(permissionStore.defaultRoutes);
- }
+const topNavChange = (val) => {
+ if (!val) {
+ appStore.toggleSideBarHide(false);
+ permissionStore.setSidebarRouters(permissionStore.defaultRoutes);
}
-});
-/** 是否需要tagview */
-const tagsView = computed({
- get: () => storeSettings.value.tagsView,
- set: (val) => {
- settingsStore.changeSetting({ key: SettingTypeEnum.TAGS_VIEW, value: val });
- }
-});
-/**是否需要固定头部 */
-const fixedHeader = computed({
- get: () => storeSettings.value.fixedHeader,
- set: (val) => {
- settingsStore.changeSetting({ key: SettingTypeEnum.FIXED_HEADER, value: val });
- }
-});
-/**是否需要侧边栏的logo */
-const sidebarLogo = computed({
- get: () => storeSettings.value.sidebarLogo,
- set: (val) => {
- settingsStore.changeSetting({ key: SettingTypeEnum.SIDEBAR_LOGO, value: val });
- }
-});
-/**是否需要侧边栏的动态网页的title */
-const dynamicTitle = computed({
- get: () => storeSettings.value.dynamicTitle,
- set: (val) => {
- settingsStore.changeSetting({ key: SettingTypeEnum.DYNAMIC_TITLE, value: val });
- // 动态设置网页标题
- useDynamicTitle();
- }
-});
+};
+
+const dynamicTitleChange = () => {
+ // 动态设置网页标题
+ useDynamicTitle();
+};
const themeChange = (val: string) => {
- settingsStore.changeSetting({ key: SettingTypeEnum.THEME, value: val });
- theme.value = val;
- if (val) {
- handleThemeStyle(val);
- }
+ settingsStore.theme = val;
+ handleThemeStyle(val);
};
const handleTheme = (val: string) => {
sideTheme.value = val;
if (isDark.value && val === SideThemeEnum.LIGHT) {
// 暗黑模式颜色不变
- settingsStore.changeSetting({ key: SettingTypeEnum.SIDE_THEME, value: SideThemeEnum.DARK });
+ settingsStore.sideTheme = SideThemeEnum.DARK;
return;
}
- settingsStore.changeSetting({ key: SettingTypeEnum.SIDE_THEME, value: val });
+ settingsStore.sideTheme = val;
};
const saveSetting = () => {
proxy?.$modal.loading('正在保存到本地,请稍候...');