从文件中定义变量

时间:2013-12-06 18:39:17

标签: javascript node.js sails.js

我刚刚发现了Sails.js,一个Node.js的MVC框架。控制器是导出将方法名称与函数关联的对象的文件,如下所示:

module.exports = {
   method : function(req, res) {
  /* ... */
  },
}

但是,在这些函数中,我们可以使用在其他文件中定义的模型,在函数中使用如下:

method: function(req, res) {
    Message.create(/* ... */);
}

Message变量未在文件中定义,文件顶部没有require(),所以如何完成?

1 个答案:

答案 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

如果您不喜欢这样(并且您不应该因为我们都知道全局变量是邪恶的),那么您可以通过配置将其关闭,并手动要求正确目录中的模型。