VsMaX
VsMaX

Reputation: 1795

Nodemon not reloading. What's wrong with this nodemon.json file

This is my nodemon.json

{ 
    "watch": ["src/**/*.ts"],
    "exec": "node out/index.js" 
}

I run the nodemon by executing:

nodemon

In root nodejs directory

This is output:

 % nodemon                                                                                                     
[nodemon] 1.11.0                                                                                
[nodemon] to restart at any time, enter `rs`                                                                                                                       
[nodemon] watching: src/**/*.ts                                                                                                                       
[nodemon] starting node out/index.js
Yay! Started app!

But when I edit any ts file in src nodemon doesn't restart the app.

UPDATE

Running nodemon --watch src/index.ts --exec 'node out/index.js'

Works and reloads the app on modifying index.ts

However, running with wildcard

nodemon --watch 'src/**/*.ts' --exec 'node out/index.js'

or

nodemon --watch src --exec 'node out/index.js'

Doesn't reload the app.

Upvotes: 25

Views: 24625

Answers (3)

jawn
jawn

Reputation: 1029

I didn't have any luck with src/ watching either. I'm watching files via nodemon --watch '**/*' this will finds any changes in the nested files

Upvotes: 0

Masih Jahangiri
Masih Jahangiri

Reputation: 10957

Use single quotation for multi-value args like `--exec' in the package.json script.

e.g. I changed "nodemon --exec npm run build-langs" to "nodemon --exec 'npm run build-langs'" and worked.

Upvotes: -1

VsMaX
VsMaX

Reputation: 1795

Solved!

By running nodemon in verbose mode I have discovered that by default it watches only *.js files, regardless of what wildcard you are watching. Therefore adding -e ts to the command fixes the problem:

nodemon --watch src/ --exec 'node out/index.js' -e ts

If someone uses nodemon.json here is mine after fix:

{ 
    "watch": ["src"],
    "exec": "tsc && node out/index.js" ,
    "ext": "js, json, ts, proto"
}

Upvotes: 76

Related Questions