symfony webpack encore Использование значений из .env (.env.local) для фронтенда. Пример настройки
Primary tabs
По аналогии с обычной конфигурацией вебпака на использование env, а Encore можно сделать так:
const webpack = require('webpack');
const dotenv = require('dotenv');
const fs = require('fs')
// ------- load env
const frontEnvPath = './.env.front';
const frontEnvLocalPath = './.env.front.local';
var env = dotenv.config({path: frontEnvPath}).parsed;
try {
if (fs.existsSync(frontEnvLocalPath)) {
let envLocal = dotenv.config({path: frontEnvLocalPath}).parsed;
env = {...env, ...envLocal} // объединяем конфигурации
}
} catch (err) {
console.error(frontEnvLocalPath + ' file:', err);
}
//--------------------
Encore
// .......
.configureDefinePlugin(
options => {
for (const property in env) {
options['process.env'][property] = JSON.stringify(env[property]);
}
}
)- Log in to post comments
- 1911 reads