Import 如何将特定于环境的详细信息从配置文件加载/写入webpack生成的budle js文件?
我有一个特定于环境的config.js文件,如下所示:Import 如何将特定于环境的详细信息从配置文件加载/写入webpack生成的budle js文件?,import,webpack,ecmascript-6,require,webpack-dev-server,Import,Webpack,Ecmascript 6,Require,Webpack Dev Server,我有一个特定于环境的config.js文件,如下所示: module.exports = { local: { apiHost: 'http://localhost', apiPort: '3003', }, development: { apiHost: 'http://192.168.1.49', apiPort: '3003', }, testing: { apiHost
module.exports = {
local: {
apiHost: 'http://localhost',
apiPort: '3003',
},
development: {
apiHost: 'http://192.168.1.49',
apiPort: '3003',
},
testing: {
apiHost: 'http://192.168.1.50',
apiPort: '3003',
}
}
要使用此文件,我写:-
const config = require('./config.js')[env];
在我的webpack(v-1)生成的bundle.js文件中加载config.js的所有内容。我只想在bundle.js文件中写入特定于环境的详细信息,不想在bundle.js文件中公开所有环境详细信息
我如何做到这一点?利用Webpack的DefinePlugin: 在您的webpack.config.js中
const webpack = require('webpack');
const envConfig = require('/path/to/config.js');
plugins: [
new webpack.DefinePlugin({
ENV_CONFIG: envConfig[your_env]
});
]
在你的申请中
if(ENV_CONFIG) {
console.log('Your environment details:', ENV_CONFIG);
}
我不想创建多个环境文件。我需要一个网页包加载器或一些可以帮助我只加载特定于环境的配置文件的东西。上面的答案对我没有帮助。我不太确定你想达到什么目的。加载特定于环境的属性(
apiHost
和apiPort
)或加载一组特定于环境的配置文件?