npm run 同時執行多個命令

  在項目中可能須要一套代碼同時部署幾套環境,每一次改動就須要同時打包N次。這時就須要可以一個命令同時打包屢次,省去了不少麻煩。vue

  這裏咱們須要用到 concurrently 這個 npm 包,可以實現咱們要的功能。node

// 首先進行安裝
npm install concurrently --save

// 而後在 package.json 裏面的 scripts 內部修改
  "scripts": {
    "dev": "webpack-dev-server --inline --progress --config build/webpack.dev.conf.js",
    "start": "npm run dev",
    "lint": "eslint --ext .js,.vue src",
    "test": "node build/build.js test",
    "prepub:hwt": "node build/build.js hwy_test",
    "prepub:dxt": "node build/build.js dxy_test",
    "build:hw": "node build/build.js hwy_pro",
    "build:dx": "node build/build.js dxy_pro",
    "all": "concurrently \"node build/build.js hwy_test\" \"node build/build.js dxy_test\"  \"node build/build.js hwy_pro\" \"node build/build.js dxy_pro\""
  },

上面的 all 就至關與同時執行了 prepub:hwt、prepub:dxt、build:hw、build:dx 這四個命令。webpack

這是其一,還有一種方法也能夠執行多個命令,就是在兩個命令之間用 && 鏈接:web

// 首先進行安裝
npm install concurrently --save

// 而後在 package.json 裏面的 scripts 內部修改
  "scripts": {
    "dev": "webpack-dev-server --inline --progress --config build/webpack.dev.conf.js",
    "start": "npm run dev",
    "lint": "eslint --ext .js,.vue src",
    "test": "node build/build.js test",
    "prepub:hwt": "node build/build.js hwy_test",
    "prepub:dxt": "node build/build.js dxy_test",
    "build:hw": "node build/build.js hwy_pro",
    "build:dx": "node build/build.js dxy_pro",
    "all": "node build/build.js hwy_test && node build/build.js dxy_test && node build/build.js hwy_pro && node build/build.js dxy_pro"
  },

兩種方法都能實現一個命令執行多個腳本,不一樣的是 concurrently 是並聯的,&& 是串聯的。npm

在時間上,第一個方法遠比第二個方法要快。json

相關文章
相關標籤/搜索