相关疑难解决方法(0)

node.js require()cache - 可能无效?

从node.js文档:

模块在第一次加载后进行缓存.这意味着(除其他外)每次调用require('foo')将获得完全相同的返回对象,如果它将解析为同一个文件.

有没有办法使这个缓存无效?即对于单元测试,我希望每个测试都能处理一个新的对象.

node.js

303
推荐指数
9
解决办法
13万
查看次数

了解Node.js模块:multiple需要返回相同的对象吗?

我有一个关于模块缓存的node.js文档的问题:

模块在第一次加载后进行缓存.这意味着(除其他外)每次调用require('foo')将获得 完全相同的返回对象,如果它将解析为同一个文件.

多次调用require('foo')可能不会导致模块代码多次执行.这是一个重要的特征.有了它,就可以返回"部分完成"的对象,从而允许加载传递依赖,即使它们会导致循环.

是什么意思may?

我想知道require是否总是返回相同的对象.所以,如果我需要一个模块一个中app.js,改变出口中的对象app.js(需要回报的),之后需要一个模块乙在app.js本身需要模块一个,我将永远得到该对象的修改版本或新一?

// app.js

var a = require('./a');
a.b = 2;
console.log(a.b); //2

var b = require('./b');
console.log(b.b); //2

// a.js

exports.a = 1;

// b.js

module.exports = require('./a');
Run Code Online (Sandbox Code Playgroud)

node.js

99
推荐指数
2
解决办法
4万
查看次数

标签 统计

node.js ×2