需求是希望打包后能打出一个config.js文件,里面有host,可以随便修改
开发的时候有多个环境的配置文件
// dev.jswindow.api = 'https://www.baidu.com/api/dev'
// test.jswindow.api = 'https://www.baidu.com/api/test'
// prodwindow.api = 'https://www.baidu.com/api/prod'
最后根据命令打包对应的环境
打包后类似这样 npm run build-prod
dist/
-qita
-index.html
-config.js
// config.jswindow.api = 'https://www.baidu.com/api/prod'
现在的是这样的
webpack-dev-server --inline --progress --config build/webpack.dev.conf.js -d=develop
因为webpack属于node环境,没有window,我应该怎么做?
不是开发或者打包的时候区分测试生产环境,而是在打包后方便修改。
部署人员部署不同服务器的时候需要修改包里的host地址,现在只能在dist包里全局搜索替换host,如12.12.12.12,这样比较麻烦,希望能在dist目录下能有一个配置文件,直接修改
新回答:
用环境变量呀
npm run build-test
npm run build-dev
npm run build-prod
环境变量的本质是通过命令,来区分不同的环境
开发是
npm run dev
启动dev
环境打包时
npm run build-dev
打包dev
环境具体通过代码实现是有非常多方式的
常用的
cross-env
cross-env RUN_ENV=production
在代码中