diff --git a/src/settings.ts b/src/settings.ts index 2c9cc43..3d68bb1 100644 --- a/src/settings.ts +++ b/src/settings.ts @@ -1,6 +1,8 @@ +const { pkg } = __APP_INFO__; + const defaultSettings: AppSettings = { - title: "vue3-element-admin", - version: "v2.9.2", + title: pkg.name, + version: pkg.version, showSettings: true, tagsView: true, fixedHeader: false, @@ -11,7 +13,7 @@ const defaultSettings: AppSettings = { language: "zh-cn", themeColor: "#409EFF", watermarkEnabled: false, - watermarkContent: "vue3-element-admin", + watermarkContent: pkg.name, }; export default defaultSettings; diff --git a/src/typings/env.d.ts b/src/typings/env.d.ts index f623198..f8a60fb 100644 --- a/src/typings/env.d.ts +++ b/src/typings/env.d.ts @@ -18,3 +18,19 @@ interface ImportMetaEnv { interface ImportMeta { readonly env: ImportMetaEnv; } + +/** + * 平台的名称、版本、运行所需的`node`版本、依赖、构建时间的类型提示 + */ +declare const __APP_INFO__: { + pkg: { + name: string; + version: string; + engines: { + node: string; + }; + dependencies: Record; + devDependencies: Record; + }; + buildTimestamp: number; +}; diff --git a/vite.config.ts b/vite.config.ts index f231ca7..69f7ea2 100644 --- a/vite.config.ts +++ b/vite.config.ts @@ -13,6 +13,19 @@ import mockDevServerPlugin from "vite-plugin-mock-dev-server"; import UnoCSS from "unocss/vite"; import { resolve } from "path"; +import { + name, + version, + engines, + dependencies, + devDependencies, +} from "./package.json"; + +/** 平台的名称、版本、运行所需的`node`版本、依赖、构建时间的类型提示 */ +const __APP_INFO__ = { + pkg: { name, version, engines, dependencies, devDependencies }, + buildTimestamp: Date.now(), +}; const pathSrc = resolve(__dirname, "src"); // https://cn.vitejs.dev/config @@ -217,5 +230,8 @@ export default defineConfig(({ mode }: ConfigEnv): UserConfig => { }, }, }, + define: { + __APP_INFO__: JSON.stringify(__APP_INFO__), + }, }; });