【发布时间】:2014-01-23 12:42:00
【问题描述】:
我们能否像在 Flex 中处理模块一样单独编译 Node.js 模块并在运行时加载它们? 我的要求是避免每次更改模块代码时都重新启动 Node.js。
【问题讨论】:
标签: node.js apache-flex node-modules
我们能否像在 Flex 中处理模块一样单独编译 Node.js 模块并在运行时加载它们? 我的要求是避免每次更改模块代码时都重新启动 Node.js。
【问题讨论】:
标签: node.js apache-flex node-modules
我认为您不能在运行 node.js 应用程序时进行热交换。
Node.js 在应用程序的生命周期内将required 模块保存在缓存中。但是,您可以执行类似
delete require.cache[require.resolve('./module.js')]
或者如果你想重新加载所有模块,那么
for (var key in require.cache) {
delete require.cache[key];
}
这将从require缓存中删除缓存的键,并在下次require('./module.js')发生时强制node.js重新加载模块。
【讨论】: