59 votes

Comment puis-je modifier les fichiers de mon serveur sans redémarrer nodejs lorsque je veux voir les changements ?

J'essaie d'installer mon propre serveur nodejs, mais j'ai un problème. Je n'arrive pas à trouver comment voir les modifications apportées à mon application sans la redémarrer. Existe-t-il un moyen d'éditer l'application et de voir les changements en direct avec node.js ?

3voto

Qu'est-ce que le "Live Coding" ?

En fait, c'est un moyen de modifier le programme pendant qu'il fonctionne, sans le redémarrer. Le but, cependant, est de se retrouver avec un programme qui fonctionne correctement lorsque nous le (re)lançons. Pour être utile, il est utile d'avoir un qui peut être personnalisé pour envoyer du code au serveur.

Jetez un coup d'œil : http://lisperator.net/blog/livenode-live-code-your-nodejs-application/

2voto

nidhin Points 349

Vous pouvez également utiliser l'outil PM2, qui est un outil de processus de production avancé pour node js. http://pm2.keymetrics.io/

1voto

Gaurav Ramanan Points 557

Je pense Inspecteur des nœuds est votre meilleure chance.

De la même manière que vous pouvez Code JS côté client de Live Edit dans Chrome Dev tools, qui utilise l'interface Chrome (Blink) Dev Tools pour fournir une édition de code en direct.

https://github.com/node-inspector/node-inspector/wiki/LiveEdit

0voto

user1897885 Points 61

Une solution simple et directe avec référence à toutes les réponses disponibles ici :

La documentation de Node dit que fs.watch est plus efficace que fs.watchFile & il peut surveiller un dossier entier.

(Je viens de commencer à l'utiliser, donc je ne sais pas vraiment s'il y a des inconvénients).

fs.watch("lib", (event_type, file_name) => {
    console.log("Deleting Require cache for " + file_name);
    delete require.cache[ require.resolve("./lib/" + file_name)];
});

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X