nodejs清除require缓存
程序员文章站
2022-07-14 20:25:25
...
当我们引入server.js
app = require('./server.js')
的时候,对server.js文件进行修改,修改后再加载便会发现并不是用的最新的server.js文件,原因是require的缓存机制,在第一次调用require('./server.js')的时候缓存下来了。
这个时候怎么办?
下面的代码解决了这个问题:
delete require.cache[require.resolve('./server.js')]; app = require('./server.js');
这个require.resolve 相当于把相对路径转化成绝对路径,避免了自己手写的绝对路径跟cache里的key不一致的问题