mirror of
				https://github.com/pure-admin/vue-pure-admin.git
				synced 2025-11-03 13:44:47 +08:00 
			
		
		
		
	feat: update
This commit is contained in:
		
							parent
							
								
									b40cd2db74
								
							
						
					
					
						commit
						b520e234a1
					
				@ -71,7 +71,7 @@
 | 
				
			|||||||
    "@vue/compiler-sfc": "^3.2.20",
 | 
					    "@vue/compiler-sfc": "^3.2.20",
 | 
				
			||||||
    "@vue/eslint-config-prettier": "^6.0.0",
 | 
					    "@vue/eslint-config-prettier": "^6.0.0",
 | 
				
			||||||
    "@vue/eslint-config-typescript": "^7.0.0",
 | 
					    "@vue/eslint-config-typescript": "^7.0.0",
 | 
				
			||||||
    "@zougt/vite-plugin-theme-preprocessor": "^1.2.0",
 | 
					    "@zougt/vite-plugin-theme-preprocessor": "^1.3.1",
 | 
				
			||||||
    "autoprefixer": "^10.2.4",
 | 
					    "autoprefixer": "^10.2.4",
 | 
				
			||||||
    "babel-plugin-transform-remove-console": "^6.9.4",
 | 
					    "babel-plugin-transform-remove-console": "^6.9.4",
 | 
				
			||||||
    "chalk": "^2.4.2",
 | 
					    "chalk": "^2.4.2",
 | 
				
			||||||
 | 
				
			|||||||
@ -4,6 +4,7 @@ import { useRouter } from "vue-router";
 | 
				
			|||||||
import { emitter } from "/@/utils/mitt";
 | 
					import { emitter } from "/@/utils/mitt";
 | 
				
			||||||
import { templateRef } from "@vueuse/core";
 | 
					import { templateRef } from "@vueuse/core";
 | 
				
			||||||
import { debounce } from "/@/utils/debounce";
 | 
					import { debounce } from "/@/utils/debounce";
 | 
				
			||||||
 | 
					import { themeColorsType } from "../../types";
 | 
				
			||||||
import { useAppStoreHook } from "/@/store/modules/app";
 | 
					import { useAppStoreHook } from "/@/store/modules/app";
 | 
				
			||||||
import { storageLocal, storageSession } from "/@/utils/storage";
 | 
					import { storageLocal, storageSession } from "/@/utils/storage";
 | 
				
			||||||
import {
 | 
					import {
 | 
				
			||||||
@ -18,6 +19,27 @@ import {
 | 
				
			|||||||
const router = useRouter();
 | 
					const router = useRouter();
 | 
				
			||||||
const { isSelect } = useCssModule();
 | 
					const { isSelect } = useCssModule();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					let themeColors = ref<Array<themeColorsType>>([
 | 
				
			||||||
 | 
					  // 暗雅(默认)
 | 
				
			||||||
 | 
					  { rgb: "27, 42, 71", themeColor: "layout-theme-default" },
 | 
				
			||||||
 | 
					  // 明亮
 | 
				
			||||||
 | 
					  { rgb: "255, 255, 255", themeColor: "layout-theme-light" },
 | 
				
			||||||
 | 
					  // 薄暮
 | 
				
			||||||
 | 
					  { rgb: "245, 34, 45", themeColor: "layout-theme-dusk" },
 | 
				
			||||||
 | 
					  // 火山
 | 
				
			||||||
 | 
					  { rgb: "250, 84, 28", themeColor: "layout-theme-volcano" },
 | 
				
			||||||
 | 
					  // 日暮
 | 
				
			||||||
 | 
					  { rgb: "250, 84, 28", themeColor: "layout-theme-higurashi" },
 | 
				
			||||||
 | 
					  // 明青
 | 
				
			||||||
 | 
					  { rgb: "19, 194, 194", themeColor: "layout-theme-mingQing" },
 | 
				
			||||||
 | 
					  // 极光绿
 | 
				
			||||||
 | 
					  { rgb: "82, 196, 26", themeColor: "layout-theme-auroraGreen" },
 | 
				
			||||||
 | 
					  // 极客蓝
 | 
				
			||||||
 | 
					  { rgb: "47, 84, 235", themeColor: "layout-theme-geekBlue" },
 | 
				
			||||||
 | 
					  // 酱紫
 | 
				
			||||||
 | 
					  { rgb: "114, 46, 209", themeColor: "layout-theme-saucePurple" }
 | 
				
			||||||
 | 
					]);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
const instance =
 | 
					const instance =
 | 
				
			||||||
  getCurrentInstance().appContext.app.config.globalProperties.$storage;
 | 
					  getCurrentInstance().appContext.app.config.globalProperties.$storage;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@ -177,8 +199,16 @@ function setTheme(layout: string) {
 | 
				
			|||||||
    </ul>
 | 
					    </ul>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    <el-divider>主题色</el-divider>
 | 
					    <el-divider>主题色</el-divider>
 | 
				
			||||||
    <ul>
 | 
					    <ul class="theme-color">
 | 
				
			||||||
      <li>11</li>
 | 
					      <li
 | 
				
			||||||
 | 
					        v-for="(item, index) in themeColors"
 | 
				
			||||||
 | 
					        :key="index"
 | 
				
			||||||
 | 
					        :style="{ background: `rgb(${item.rgb})` }"
 | 
				
			||||||
 | 
					      >
 | 
				
			||||||
 | 
					        <el-icon style="margin: 4px 3px 0 0">
 | 
				
			||||||
 | 
					          <Check />
 | 
				
			||||||
 | 
					        </el-icon>
 | 
				
			||||||
 | 
					      </li>
 | 
				
			||||||
    </ul>
 | 
					    </ul>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    <el-divider>界面显示</el-divider>
 | 
					    <el-divider>界面显示</el-divider>
 | 
				
			||||||
@ -316,4 +346,29 @@ function setTheme(layout: string) {
 | 
				
			|||||||
    }
 | 
					    }
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					.theme-color {
 | 
				
			||||||
 | 
					  width: 100%;
 | 
				
			||||||
 | 
					  height: 40px;
 | 
				
			||||||
 | 
					  margin-top: 20px;
 | 
				
			||||||
 | 
					  display: flex;
 | 
				
			||||||
 | 
					  justify-content: center;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  li {
 | 
				
			||||||
 | 
					    float: left;
 | 
				
			||||||
 | 
					    width: 20px;
 | 
				
			||||||
 | 
					    height: 20px;
 | 
				
			||||||
 | 
					    margin-top: 8px;
 | 
				
			||||||
 | 
					    margin-right: 8px;
 | 
				
			||||||
 | 
					    color: #fff;
 | 
				
			||||||
 | 
					    font-weight: 700;
 | 
				
			||||||
 | 
					    text-align: center;
 | 
				
			||||||
 | 
					    border-radius: 2px;
 | 
				
			||||||
 | 
					    cursor: pointer;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    &:nth-child(2) {
 | 
				
			||||||
 | 
					      border: 1px solid #ddd;
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
</style>
 | 
					</style>
 | 
				
			||||||
 | 
				
			|||||||
@ -63,3 +63,8 @@ export type childrenType = {
 | 
				
			|||||||
    };
 | 
					    };
 | 
				
			||||||
  };
 | 
					  };
 | 
				
			||||||
};
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					export type themeColorsType = {
 | 
				
			||||||
 | 
					  rgb: string;
 | 
				
			||||||
 | 
					  themeColor: string;
 | 
				
			||||||
 | 
					};
 | 
				
			||||||
 | 
				
			|||||||
@ -38,7 +38,7 @@ import {
 | 
				
			|||||||
} from "element-plus";
 | 
					} from "element-plus";
 | 
				
			||||||
 | 
					
 | 
				
			||||||
// https://element-plus.org/zh-CN/component/icon.html
 | 
					// https://element-plus.org/zh-CN/component/icon.html
 | 
				
			||||||
import { Menu } from "@element-plus/icons";
 | 
					import { Check } from "@element-plus/icons";
 | 
				
			||||||
 | 
					
 | 
				
			||||||
const components = [
 | 
					const components = [
 | 
				
			||||||
  ElTag,
 | 
					  ElTag,
 | 
				
			||||||
@ -75,7 +75,7 @@ const components = [
 | 
				
			|||||||
  ElDescriptions,
 | 
					  ElDescriptions,
 | 
				
			||||||
  ElDescriptionsItem,
 | 
					  ElDescriptionsItem,
 | 
				
			||||||
  ElBacktop,
 | 
					  ElBacktop,
 | 
				
			||||||
  Menu
 | 
					  Check
 | 
				
			||||||
];
 | 
					];
 | 
				
			||||||
 | 
					
 | 
				
			||||||
const plugins = [ElLoading];
 | 
					const plugins = [ElLoading];
 | 
				
			||||||
 | 
				
			|||||||
@ -30,7 +30,8 @@ export const injectResponsiveStorage = (app: App, config: ServerConfigs) => {
 | 
				
			|||||||
    layout: {
 | 
					    layout: {
 | 
				
			||||||
      type: Object,
 | 
					      type: Object,
 | 
				
			||||||
      default: Storage.getData(undefined, "layout") ?? {
 | 
					      default: Storage.getData(undefined, "layout") ?? {
 | 
				
			||||||
        layout: config.Layout
 | 
					        layout: config.Layout,
 | 
				
			||||||
 | 
					        theme: config.Theme
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
  });
 | 
					  });
 | 
				
			||||||
 | 
				
			|||||||
							
								
								
									
										1
									
								
								types/global.d.ts
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										1
									
								
								types/global.d.ts
									
									
									
									
										vendored
									
									
								
							@ -90,6 +90,7 @@ declare global {
 | 
				
			|||||||
    KeepAlive?: boolean;
 | 
					    KeepAlive?: boolean;
 | 
				
			||||||
    Locale?: string;
 | 
					    Locale?: string;
 | 
				
			||||||
    Layout?: string;
 | 
					    Layout?: string;
 | 
				
			||||||
 | 
					    Theme?: string;
 | 
				
			||||||
    MapConfigure?: {
 | 
					    MapConfigure?: {
 | 
				
			||||||
      amapKey?: string;
 | 
					      amapKey?: string;
 | 
				
			||||||
      baiduKey?: string;
 | 
					      baiduKey?: string;
 | 
				
			||||||
 | 
				
			|||||||
@ -60,11 +60,11 @@ export default ({ command, mode }: ConfigEnv): UserConfigExport => {
 | 
				
			|||||||
        scss: {
 | 
					        scss: {
 | 
				
			||||||
          multipleScopeVars: [
 | 
					          multipleScopeVars: [
 | 
				
			||||||
            {
 | 
					            {
 | 
				
			||||||
              scopeName: "layout-default",
 | 
					              scopeName: "layout-theme-default",
 | 
				
			||||||
              path: pathResolve("src/layout/theme/default-vars.scss")
 | 
					              path: pathResolve("src/layout/theme/default-vars.scss")
 | 
				
			||||||
            },
 | 
					            },
 | 
				
			||||||
            {
 | 
					            {
 | 
				
			||||||
              scopeName: "layout-light",
 | 
					              scopeName: "layout-theme-light",
 | 
				
			||||||
              path: pathResolve("src/layout/theme/light-vars.scss")
 | 
					              path: pathResolve("src/layout/theme/light-vars.scss")
 | 
				
			||||||
            }
 | 
					            }
 | 
				
			||||||
          ],
 | 
					          ],
 | 
				
			||||||
 | 
				
			|||||||
							
								
								
									
										12
									
								
								yarn.lock
									
									
									
									
									
								
							
							
						
						
									
										12
									
								
								yarn.lock
									
									
									
									
									
								
							@ -922,7 +922,7 @@
 | 
				
			|||||||
  dependencies:
 | 
					  dependencies:
 | 
				
			||||||
    vue-demi "*"
 | 
					    vue-demi "*"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
"@zougt/some-loader-utils@^1.1.0":
 | 
					"@zougt/some-loader-utils@^1.3.2":
 | 
				
			||||||
  version "1.3.2"
 | 
					  version "1.3.2"
 | 
				
			||||||
  resolved "https://registry.npmjs.org/@zougt/some-loader-utils/-/some-loader-utils-1.3.2.tgz#362ad8158c3a95fa89ac61b2e6f9e61a32b2364a"
 | 
					  resolved "https://registry.npmjs.org/@zougt/some-loader-utils/-/some-loader-utils-1.3.2.tgz#362ad8158c3a95fa89ac61b2e6f9e61a32b2364a"
 | 
				
			||||||
  integrity sha512-8cWH8yfQ10Fwh7Dc4kvPwFQ901KGUmGxKgNq1asfTsFdf6QSRZOQWWMX58LuV4XjqRqhMECWyd6fNvjPddQjTQ==
 | 
					  integrity sha512-8cWH8yfQ10Fwh7Dc4kvPwFQ901KGUmGxKgNq1asfTsFdf6QSRZOQWWMX58LuV4XjqRqhMECWyd6fNvjPddQjTQ==
 | 
				
			||||||
@ -930,12 +930,12 @@
 | 
				
			|||||||
    parse-color "^1.0.0"
 | 
					    parse-color "^1.0.0"
 | 
				
			||||||
    postcss "^8.2.9"
 | 
					    postcss "^8.2.9"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
"@zougt/vite-plugin-theme-preprocessor@^1.2.0":
 | 
					"@zougt/vite-plugin-theme-preprocessor@^1.3.1":
 | 
				
			||||||
  version "1.2.0"
 | 
					  version "1.3.1"
 | 
				
			||||||
  resolved "https://registry.npmjs.org/@zougt/vite-plugin-theme-preprocessor/-/vite-plugin-theme-preprocessor-1.2.0.tgz#cf3443d9bfd8dc722e2bfe7556b993c1e03b2e28"
 | 
					  resolved "https://registry.npmjs.org/@zougt/vite-plugin-theme-preprocessor/-/vite-plugin-theme-preprocessor-1.3.1.tgz#09971727583f5c07c6aae7775394cf02b8c04990"
 | 
				
			||||||
  integrity sha512-CTt0UmvykY5QL6DGSs/gxOBfqdmN53p1cI4eRXjbfq+cpAJO4uvZfZTk/tuHgm4FOvOVOgJ7dPCm3xX9H5WIUQ==
 | 
					  integrity sha512-GKTHaxgndS70/BS1uoP+qY45dl2Gnq05pwJiyiytyVgz+jB7zmGWgqLnMoA58oE74Nx32zwuTRKnE6XJGY8N2w==
 | 
				
			||||||
  dependencies:
 | 
					  dependencies:
 | 
				
			||||||
    "@zougt/some-loader-utils" "^1.1.0"
 | 
					    "@zougt/some-loader-utils" "^1.3.2"
 | 
				
			||||||
    fs-extra "^9.1.0"
 | 
					    fs-extra "^9.1.0"
 | 
				
			||||||
    string-hash "^1.1.3"
 | 
					    string-hash "^1.1.3"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user