質問: これまでGulpでタスク管理していたのを、npm scriptsでの管理に移行しようとしています。 そこで、以下の内容でタスク実行したいです。 1HTML, JS, CSSなどをコンパイル(直列処理) 2BrowserSyncでローカルサーバを立ち上げ、HTML, JS, CSS等をWatch(並列処理) こちらが詳細です。 ``` "scripts": { "local": "NODE_ENV=local npm-run-all -s local:build:** && npm-run-all -p local:watch:**", "local:build:clean": "rimraf ./local/**", "local:build:copy": "cpx src/img/** local/img/", "local:build:js": "webpack", "local:build:pug": "pug src/pug/build/*.pug --out local --basedir src/pug/ --pretty", "local:build:scss": "node-sass src/scss/build.scss local/styles/style.css", "local:watch:pug": "watch 'npm run local:build:pug' src/pug/", "local:watch:scss": "watch 'npm run local:build:scss' src/scss/", "local:watch:js": "watch 'npm run local:build:js' src/js/", "local:watch:copy": "watch 'npm run local:build:copy' src/img/", "local:watch:server": "browser-sync start --server './local/' --config bs-config.js" }, ``` この順番で実行したい理由は、全てを並行処理するとコンパイル完了前にローカルサーバが立ち上がってしまい、 エラーになるためです。 しかし現状、watchではコンパイルが自動で起こるため、1と2でそれぞれコンパイルが行われ、 無駄な処理になってしまっています。 これを解決するために、初回コンパイルを伴わないWatchができないものかと考えています。 何か方法がありましたら、ご教授願います。
回答: npm-watchを使うことで解決しました。