Como usar o Node watch ao invés do Nodemon

Hoje se você trabalha com o Node te garanto que você trabalha ou já trabalhou com o Nodemon.

Caso você não saiba, o Nodemon reinicia o servidor sempre que tem alguma alteração em algum arquivo e depois salvamos esse arquivo.

O comando é esse aqui: npx nodemon src/app.js

Onde o src é a pasta e o app.js é o arquivo que ele vai ficar observando, e sempre que eu alterar e salvar esse arquivo o nodemon reinicia o servidor, ficando o terminal igual essa imagem abaixo.

Veja nessa imagem acima que apareceu a seguinte frase: restarting due to changes, traduzindo fica, reiniciando devido a mudanças.

E na linha de baixo tem starting 'node src/app.js', é o comando executado para iniciar o servidor novamente.

E caso você tenha curiosidade, o app.js está assim.

import express from 'express';

const app = express();

app.listen(3000, () => {
  console.log('server running 🔥');
}

Agora com o próprio node eu posso ficar observando um arquivo, e posso alcançar isso usando o comando node --watch

Se eu quiser observar o app.js que está na pasta src, eu faço o seguinte: node --watch src/app.js

Simples certo ?

Mas tem um porém, na data de hoje(06/02/2023) esse é um recurso experimental.

E por ele ser experimental eu encontrei um problema que aconteceu aqui e não sei se está acontecendo com todo mundo.

Quando eu coloco para observar uma pasta inteira com o comando: node --watch-path=./src app.js, o consumo de cpu e memória vai lá pra cima e quase trava o computador(estou usando o windows).

Agora não sei se é só comigo ou não, mas aqui aconteceu esse problema chato .

Caso queira ver a documentação clique aqui.


Abaixo vou deixar uma aula que gravei sobre o assunto.

About the Author

Alexandre Eduardo Cardoso
Alexandre Eduardo Cardoso

Meu nome é Alexandre Cardoso e tenho 41 anos. Sou programador desde 2008, quando comecei a estudar e me especializar em PHP e Javascript. Já em 2011, dei minhas primeiras aulas de programação, e não consegui mais parar desde então. Ensinar é minha missão neste mundo!

0 Comments

Leave a comment

O seu endereço de email não será publicado. Campos obrigatórios marcados com *