2017-02-15 44 views
3

我正在开发与vuejs和使用webpack打包我的应用程序的单页面应用程序。我有两个配置文件,这些config.dev.js和config.prod.js分离开发和prod配置文件的webpack构建

config.dev.js

{ 
    "api-url":"http://10.0.0.50:8080" 
} 

config.prod.js

{ 
    "api-url":"https://api.myproduction.com" 
} 

我只想包含config.dev.js并排除开发环境包的config.prod.js。同样只包含config.prod.js并排除生产环境包的config.dev.js。我怎样才能做到这一点?

回答

3

你可以做到这一点无论是有一个文件,返回取决于NODE_ENV此设置:

config.js

module.exports = process.env.NODE_ENV === 'production' 
    ? require('./config.prod.js') 
    : require('./config.dev.js') 

然后在你的代码,你只需要config.js,它会做的伎俩。请记住,为了实现这一目标,您需要以生产模式运行webpack:使用标志webpack -p或设置NODE_ENV=production webpack

我也会推荐将这个与DefinePlugin结合使用https://webpack.js.org/plugins/define-plugin/#components/sidebar/sidebar.jsx