一尘不染

如何在Node.js中自动重新加载文件?

javascript

关于如何在Node.js中实现文件自动重装的任何想法?每次更改文件时,我都无法重新启动服务器。显然,Node.js的require()功能不会重新加载文件(如果已经需要),因此我需要执行以下操作:

var sys     = require('sys'), 
    http    = require('http'),
    posix   = require('posix'),
    json    = require('./json');

var script_name = '/some/path/to/app.js';
this.app = require('./app').app;

process.watchFile(script_name, function(curr, prev){
    posix.cat(script_name).addCallback(function(content){
        process.compile( content, script_name );
    });
});

http.createServer(this.app).listen( 8080 );

app.js 文件中,我有:

var file = require('./file');
this.app = function(req, res) { 
    file.serveFile( req, res, 'file.js');  
}

但这也不起作用-我在process.compile()声明“ require”未定义的语句中遇到错误。process.compile正在逃避
app.js ,但不知道node.js全局变量。


阅读 535

收藏
2020-05-01

共1个答案

一尘不染

一个很好的,最新的替代方法supervisornodemon

监视node.js应用程序中的任何更改并自动重启服务器-非常适合开发

使用方法nodemon

$ npm install nodemon -g
$ nodemon app.js
2020-05-01