express / sails.js模块导出私有方法和其他模块的关系

我了解module.export的用途

基本上,它期望一个function的对象:

// Parent.js module.exports = { createChild: function(req, res) { ... Child.Create(..) .. } } 

1)模块对象中的函数如何能够调用其他模块? 例如,在Parent.js中,我也可以调用另一个模块Child.js。

2)如果我想添加私人functionParent.js(不能通过要求访问),可以访问父数据库就像module.export内的函数

例如:

  // Parent.js function validateInput(req) { } module.export = { } 

我了解module.export的用途

基本上,它期望一个function的对象:

不必要。 你可以分配任何东西到module.exports ,例如一个对象,一个数组,一个函数,甚至只是一个值。

1)模块对象中的函数如何能够调用其他模块? 例如,在Parent.js中,我也可以调用另一个模块Child.js。

在这种情况下,你的父模块必须require你的子模块,例如:

 // Parent.js module.exports = { createChild: function(req, res) { ... var Child = require('./child'); Child.Create(..) { ... } } } 

2)如果我想添加私有函数到Parent.js(不能通过require访问),可以访问父数据库就像module.export内的函数。

无论通过module.exports无法访问, module.exports能从外部(直接)访问。 例如,在你的情况下,你将无法直接从另一个模块调用validateInput

请阅读关于模块和/或CommonJS规范的官方文档 ,这确实有帮助。