【发布时间】:2014-11-20 01:28:06
【问题描述】:
我正在尝试组织一个使用 Express 4 开发的 Node.js 应用程序,但对使用 require() 导入的模块的范围感到困惑。
想象一下,我使用require('./services/user') 在诸如 routes/user.js 之类的模块中导入服务:
var userService = require('./services/user');
然后我在另一个模块 routes/department.js 中执行相同的 require('./services/user')。
我的问题是:userService 是 user.js 和 department.js 中的同一个实例,还是每个都有自己的 userService 对象?也就是说,一旦你通过 module.exports = XXX 导出了某个元素,如果你需要相同的文件,你会得到相同的实例吗?你能告诉我在 Node.js 文档中指定的位置吗?
【问题讨论】:
-
routes/user.js 和 route/department.js 是否需要同一个代码?
-
是的,在 express app.js 模块中:app.use('/users', userRoutes);app.use('/departments', departmentRoutes);
标签: node.js express requirejs require