如何在nodejs中使用require

How to use require in nodejs?

本文关键字:require nodejs      更新时间:2023-09-26

我有3个文件:

Child1:

var Parent = require('./Parent');
Parent['type'] = 'Child1';
module.exports = Parent;

Child2:

var Parent = require('./Parent');
Parent['type'] = 'Child2';
module.exports = Parent;

父级:

module.exports = { 'parent' : 1 }

test.js:

var test1 = require('./Child1')
var test2 = require('./Child2')

结果:

{ parent: 1, type: 'Child2' }
----
{ parent: 1, type: 'Child2' }

为什么?

来自文档:

模块在第一次加载后被缓存。这意味着(除其他外)每个需要('o')的电话都会得到完全相同的对象返回,如果它将解析为文件

这不仅对性能特别方便,而且对模块初始化也特别方便。如果需要不同的对象,请将模块更改为工厂。