У меня есть проект Nodejs с несколькими расширениями файлов. Я хочу запустить npm run build:copy-assets
, когда редактировался любой файл, заканчивающийся на .e js, и запустить npm run start
, когда был отредактирован файл. js.
Я пытаюсь использовать nodemon со следующей конфигурацией, но проблема в следующем: nodemon вызывает npm run start
, даже когда я редактирую файлы .e js.
# nodemon.json
{
"execMap": {
"js": "npm run start",
"ejs": "npm run build:copy-assets"
}
}
# package.json
...
"main": "index.js",
"scripts": {
"start": "node dist/server.js",
"watch": "nodemon -V -w src -w dist --ext ejs,js",
"build:copy-assets": "npx --no-install ts-node tools/copyAssets",
...
# nodemon verbose logs
[nodemon] files triggering change check: src/views/index.ejs
[nodemon] matched rule: /app/src/**/*
[nodemon] changes after filters (before/after): 1/1
[nodemon] restarting due to changes...
[nodemon] src/views/index.ejs
[nodemon] starting `npm run start index.js`
[nodemon] spawning
[nodemon] child pid: 73
Как я могу запускать разные сценарии в зависимости от по расширению файла? В решении не обязательно использовать nodemon, но лучше использовать экосистему узлов.