node.js - 我可以将全局变量放入 Controller 中吗?

标签 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: {}
};

这将帮助我避免向数据库发出请求,并且可以将数据从不同的模型发送到 View 。

非常感谢您给我的帮助。

最佳答案

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

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: {}
};

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

关于node.js - 我可以将全局变量放入 Controller 中吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24169068/

相关文章:

javascript - node.js超时重新启动api调用

postgresql - 启动时的 Sail.js 多个连接

mysql - Express.JS 应用程序与 mysql 服务器冲突

javascript - Sails.js 对关联值的查询

javascript - 分离的 node.js 应用程序中的 Redis 客户端

javascript - 在 NodeJS 中将 MySQL 查询流式传输到 CSV 文件

node.js - 使用 Sails.js 和 NodeBB 的 Greenfields 项目 - Passport 是否适合提供单点登录?

javascript - 有没有更好的方法在 Sails JS 中使用嵌套(关联)模型?

node.js - 套接字 io 广播在 2 次尝试后停止工作

javascript - 从 JS 数组中选择一个值并跳过它,直到显示所有值