如何清除Node模块的缓存问题
问题描述:
Node.js中,为了不造成变量和函数的污染,为开发者提供了简单的模块系统. 要在一个文件模块中获取其他文件模块的内容,首先需要使用require()函数加载这个模块;
在模块加载过程中,对于多次使用同一模块标识加载模块的情况,node只会加载一次,这是由于第一次加载某个模块时,node会缓存该模块,再次加载时将会从缓存中获取. 所有缓存的模块保存在require.cach中,可以手动删除模块缓存.
下面我们以一个例子来说明:
foo.js
console.log('foo模块被加载了')
test.js
// 同一模块标识,node第一次加载完成时会缓存该模块
// 再次加载时,将会从缓存中获取.
require('./foo')