私はこの方法でモジュールをリロードしています:
require('./module.js'); // require the module
delete require.cache('/module.js'); // delete module from cache
require('/module.js'); // re-require the module
ただし、モジュールに次のようなものが含まれている場合は問題があります。
setInterval(function(){
console.log('hello!');
}, 1000);
モジュールをリロードするたびに新しいsetInterval
ものが呼び出されますが、最後のモジュールは閉じられません。
各モジュールの(長い)実行中の関数を知って、再度必要になる前にそれらを停止できるようにする方法はありますか?または、どうすればこれを機能させることができますか?
私はどんなクレイジーなアイデアにもオープンです。