Skip to content

Commit 28a002d

Browse files
feat: 加入vite支持的.env文件注入环境变量
1 parent d5dfe48 commit 28a002d

File tree

5 files changed

+22
-10
lines changed

5 files changed

+22
-10
lines changed

.env.production

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
# .env.production
2+
VITE_appName=webapp-react
3+
VITE_baseURL=https://srv-demo-docker.onrender.com
4+
VITE_env=demo
5+
VITE_version=""

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
{
22
"name": "react",
33
"private": true,
4-
"version": "0.0.4",
4+
"version": "0.0.5",
55
"type": "module",
66
"scripts": {
77
"dev": "vite",

src/core/http/config.ts

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -9,15 +9,14 @@ export interface IConfig {
99

1010
export function getConfig(): IConfig {
1111
const mateEnv = import.meta.env;
12-
const processEnv = process?.env;
12+
1313
const defaultAppConfig = {
14-
appName: mateEnv?.appName || processEnv?.appName || "",
15-
version: mateEnv?.version || processEnv?.version || "",
16-
env: mateEnv?.env || processEnv?.env || "",
17-
baseURL: mateEnv?.baseURL || processEnv?.baseURL || "",
14+
appName: mateEnv?.VITE_appName || "",
15+
baseURL: mateEnv?.VITE_baseURL || "",
16+
version: mateEnv?.VITE_version || "",
17+
env: mateEnv?.VITE_env || "",
1818
};
1919
console.log("metaEnv", mateEnv);
20-
console.log("processEnv", processEnv);
2120

2221
// 本地开发环境直接从根目录config文件读取, ci环境直接从mate标签读取, 通过容器环境变量写入html的mate标签
2322
// mate标签name为:app_config, content格式为:appName=webapp,baseURL=https://api.com

src/vite-env.d.ts

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1 +1,12 @@
11
/// <reference types="vite/client" />
2+
3+
interface ImportMetaEnv {
4+
readonly VITE_appName: string
5+
readonly VITE_baseURL: string;
6+
readonly VITE_env?: string;
7+
readonly VITE_version?: string;
8+
}
9+
10+
interface ImportMeta {
11+
readonly env: ImportMetaEnv
12+
}

vite.config.ts

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,9 +3,6 @@ import react from "@vitejs/plugin-react";
33

44
// https://vitejs.dev/config/
55
export default defineConfig({
6-
define: {
7-
'process.env': {}
8-
},
96
plugins: [
107
react({
118
babel: {

0 commit comments

Comments
 (0)