因为我可以将全局变量放在控制器中?

时间:2014-06-11 17:29:35

标签: node.js sails.js

我需要以下内容:

module.exports = {

    'globalVariable' : "globalVariable"  ,

    'index' : function(req, res, next){

        this.proyectos = "";

        Proyecto.find().done(function(err, proyectos){
            globalVariable = proyectos;
        });

        res.view({
           'data' : globalVariable
        });   
    },

  _config: {}
};

这将帮助我避免向数据库发出请求,并可以将来自不同模型的数据发送到视图。

非常感谢您给予我的帮助。

1 个答案:

答案 0 :(得分:2)

您可以在module.exports块之外声明变量:

var globalVariable = "globalVariable";

module.exports = {

    'index' : function(req, res, next){

        this.proyectos = "";

        Proyecto.find().done(function(err, proyectos){
            globalVariable = proyectos;
        });

        res.view({
           'data' : globalVariable
        });   
    },

  _config: {}
};

请注意,这不是整个应用程序的“全局”;它仅限于它声明的控制器的范围。