cross-env使用以及根據環境打包

關於

  • 以前的項目打包都是靠手動去改環境變量(純屬沙雕行爲),隨着項目愈來愈多,每個項目打包都要去改這個變量的話真的是太蛋疼了,因此研究了一下webpack打包以及node env

主要

  • 這樣作有什麼好處?
publicPath: process.env.APP_ENV === 'production' ? 'https://cdn.xxxx.com/brand-mall-chengdong/' : '/',
  outputPath: './brand-mall-chengdong',

以前都是每次打包手動修改這個靜態資源的地址,修改以後根據環境變量自動區分javascript

  • 第一步,安裝cross-env
yarn add cross-env@5.1.1 cross-port-killer@1.0.1
什麼是cross-env?
解:當您使用NODE_ENV=production相似設置環境變量時,大多數Windows命令提示將會阻塞 。(例外是Windows上的Bash,它使用本機Bash。)一樣,Windows和POSIX命令如何利用環境變量也有所不一樣。使用POSIX,您能夠使用:$ENV_VAR 和您使用的Windows %ENV_VAR%。
  • 第二步,修改package.json文件
"build": "cross-env APP_ENV=production umi build",
    "build:test": "cross-env APP_ENV=test umi build",

新增一條如上命令,當執行npm run build時,設置proess.env.APP_ENVproduction ,同理設置爲test.而後在config.js文件中便可根據這個變量設置相應的路徑。html

關於

相關文章
相關標籤/搜索