uniapp process.env.NODE_ENV 在哪配置
时间: 2024-09-29 20:14:39 浏览: 70
深入理解webpack process.env.NODE_ENV配置
5星 · 资源好评率100%
在uni-app中,`process.env.NODE_ENV` 是一个全局变量,用于表示当前运行环境,通常用于条件编译和环境特定配置。默认情况下,其值由Node.js环境提供,但在uni-app项目中,我们可以在`vue.config.js` 文件中自定义这个环境变量。
以下是配置过程:
1. 打开项目根目录下的 `vue.config.js` 文件,这是uni-app官方提供的配置工具。
2. 在该文件中找到或添加一个 `chainWebpack` 函数,这通常是用来修改webpack配置的。在这个函数内部,你可以访问到 `webpack-chain` 对象,然后对 `configure` 方法进行扩展。
3. 在 `configure` 方法中,可以查找并修改 `environment` 配置块,如下所示:
```javascript
module.exports = {
configureWebpack: {
chainWebpack(config) {
config.resolve().alias
.set('@env', path.resolve(__dirname, '../src/env')) // 设置别名
config.when(process.env.NODE_ENV === 'production', { // 判断条件
use: [
new HtmlWebpackPlugin({
filename: 'index.html',
template: 'public/index.html', // 根据环境动态生成html模板
}),
new MiniCssExtractPlugin(), // 生产环境下提取css
],
then: config => {
config.optimization.minimize(true); // 开启压缩
config.devtool('source-map'); // 生产环境的源码映射
},
})
if (process.env.NODE_ENV !== 'development') { // 如果不是开发环境
config.plugins.delete('preload') // 删除预加载插件
config.plugins.delete('prefetch') // 删除预获取插件
}
},
},
};
```
在这个例子中,`process.env.NODE_ENV` 被用于判断是开发还是生产环境,并相应地调整编译选项。
阅读全文