我刚刚发现了Sails.js,一个Node.js的MVC框架。控制器是导出将方法名称与函数关联的对象的文件,如下所示:
module.exports = {
method : function(req, res) {
/* ... */
},
}
但是,在这些函数中,我们可以使用在其他文件中定义的模型,在函数中使用如下:
method: function(req, res) {
Message.create(/* ... */);
}
Message
变量未在文件中定义,文件顶部没有require()
,所以如何完成?
答案 0 :(得分:1)
Sails.js有很多“自动化”的内容。默认情况下,sails会将模型,适配器和服务公开给控制器模块的全局上下文:
https://github.com/balderdashy/sails/blob/master/lib/configuration/defaults.js#L57 https://github.com/balderdashy/sails/blob/master/lib/app/exposeGlobals.js
如果您不喜欢这样(并且您不应该因为我们都知道全局变量是邪恶的),那么您可以通过配置将其关闭,并手动要求正确目录中的模型。