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规范的官方文档 ,这确实有帮助。