Node.js 查看多个扩展并根据扩展运行不同的脚本

Node.js 查看多个扩展并根据扩展运行不同的脚本,node.js,watch,nodemon,Node.js,Watch,Nodemon,我有一个具有多个文件扩展名的Nodejs项目。 我想在编辑任何以.ejs结尾的文件时运行npm run build:copy assets, 并在编辑.js文件时运行npm run start 我正在使用以下配置尝试nodemon, 但问题是: 即使在我编辑.ejs文件时,nodemon也会调用npm run start。 # nodemon.json { "execMap": { "js": "npm run start", "ejs": "npm run build:co

我有一个具有多个文件扩展名的Nodejs项目。 我想在编辑任何以.ejs结尾的文件时运行
npm run build:copy assets
, 并在编辑.js文件时运行
npm run start

我正在使用以下配置尝试nodemon, 但问题是: 即使在我编辑.ejs文件时,nodemon也会调用
npm run start

# nodemon.json
{
  "execMap": {
    "js": "npm run start",
    "ejs": "npm run build:copy-assets"
  }
}
如何根据文件扩展名运行不同的脚本? 解决方案不必使用nodemon,但最好使用节点生态系统

# 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