Я пытаюсь связать вызов сценария ng serve
во время выполнения, но когда я выполнил эту команду, второй цепочечный сценарий build-components.js
запускается только при первом вызове.
Я думал одновременно пакет в этом случае позволит обоим сценариям работать в последовательности в соответствии с документами https://www.npmjs.com/package/concurrently
Я хочу запускать build-components.js
сценарий при каждом запуске ng serve
(то есть обнаруживать источникизменить).
скрипт Package.json :
"build:watch": "concurrently \"ng serve --port 4003\" \"node build-components.js\""
тестирование
concurrently "ng serve --port 4003" "node build-components.js"
[1] node build-components.js exited with code 0
[0] i 「wds」: Project is running at http://localhost:4003/webpack-dev-server/
Вопрос:
Как запустить другой скрипт npm после каждой сборки ng serve?
Я также посмотрел на перехватчики сообщений npm, но, похоже, скрипт не запускается после запуска ng serve
.
http://www.marcusoft.net/2015/08/pre-and-post-hooks-for-npm-scripting.html#hooks-pre-and-post
Это build-components.js
скрипт для справки. Он копирует некоторые дополнительные файлы сборки в общую папку для хостинга:
const fs = require('fs-extra');
const concat = require('concat');
(async function build() {
const js = [
'./dist/app/runtime-es2015.js',
'./dist/app/main-es2015.js',
'./dist/app/scripts.js',
];
const css = ['./dist/app/styles.css'];
await fs.ensureDir('components');
await concat(js, 'components/component.js');
await concat(css, 'components/component.css');
})();