我在 .env 文件中做了以下操作: APP_ENV=生产环境 MIX_APP_ENV="${APP_ENV}"
在 webpack.mix.js 文件中: const APP_ENV = process.env.MIX_APP_ENV;
使用 if else 运算符,我检查没有为 APP_ENV 变量分配任何内容。 我需要执行以下操作 - 根据环境,将 sass 和 js 文件编译到特定文件夹中。
我正在尝试执行以下操作,但没有任何效果:
const APP_ENV = process.env.MIX_APP_ENV;
if (APP_ENV == 'dev' || APP_ENV == 'production') {
mix
.js('resources/js/app.js', 'js')
.sass('resources/sass/app.scss', 'css')
.version();
} else {
mix
.setPublicPath('public/build')
.setResourceRoot('/build/')
.js('resources/js/app.js', 'js')
.sass('resources/sass/app.scss', 'css')
.version();
}
最佳答案
无需在 .env 文件中创建中间变量 MIX_APP_ENV。 以下代码有效:
require('dotenv').config();
const env = process.env.APP_ENV;
关于拉维尔 5.8。如何在 webpack.mix.js 中使用 .env 文件的变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55199455/