uni-app scripts自定义环境变量在config文件中无法读取
uni-app scripts自定义环境变量在config文件中无法读取
2 回复
请问你最后怎么解决这个问题了
更多关于uni-app scripts自定义环境变量在config文件中无法读取的实战教程也可以访问 https://www.itying.com/category-93-b0.html
在 uni-app 中,通过 scripts 配置自定义环境变量时,需要在 package.json 中正确设置环境变量,并在 vue.config.js 或 uni.config.js 中通过 process.env 读取。常见问题及解决方案如下:
-
环境变量未正确注入
确保package.json的scripts命令中设置了环境变量,例如:"scripts": { "build:dev": "cross-env NODE_ENV=development uni-build", "build:prod": "cross-env NODE_ENV=production uni-build" }使用
cross-env可跨平台设置环境变量。 -
在配置文件中读取环境变量
在vue.config.js或自定义配置文件中,通过process.env.NODE_ENV获取变量:const isProduction = process.env.NODE_ENV === 'production'; module.exports = { // 根据环境变量配置不同参数 } -
环境变量未传递到客户端
若需在客户端代码(如页面或组件)中使用环境变量,需在配置文件中通过define注入:const webpack = require('webpack'); module.exports = { configureWebpack: { plugins: [ new webpack.DefinePlugin({ 'process.env.NODE_ENV': JSON.stringify(process.env.NODE_ENV) }) ] } } -
检查变量命名和格式
环境变量名需以VUE_APP_或UNI_APP_开头才能在客户端访问,例如:"scripts": { "build:dev": "cross-env VUE_APP_API_URL=http://dev.example.com uni-build" }

