[clear-module](https://www.npmjs.com/package/clear-module) 请问下它的作用是什么?

npm有一个三方库
clear-module

请问下它的作用是什么?
我没有发现它有什么使用的有意义的功能:

// foo.js
let i = 0;
module.exports = () => ++i;
const clearModule = require('clear-module');

require('./foo')();
//=> 1

require('./foo')();
//=> 2

clearModule('./foo');

require('./foo')();
//=> 1

它能做到什么呢?

阅读 1.4k
1 个回答

清除指定模块的缓存,并且使下次 require 该模块时会重新加载该模块。
因为node第一次引用某个模块时,Node 解析该模块并将其编译为 JS 代码,在内存中创建一个新对象,然后将该对象缓存在内存中以避免每次使用该模块时反复解析和编译
clear-module 可以清除特定模块的缓存就如举的例子

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题