当前位置: 首页 > 面试题库 >

在路由中可以访问app.js中的全局变量?

巫英纵
2023-03-14
问题内容

如何设置变量,app.js并使其在所有路由中都可用,至少在路由中的index.js文件中可用。使用快速框架和node.js


问题答案:

要创建全局变量,只需声明不带var关键字的变量即可。(通常来说,这不是最佳做法,但在某些情况下可能会有用-请小心,因为它将使变量随处可见。)

这是visionmedia / screenshot-app的示例

文件 app.js

/**
 * Module dependencies.
 */

var express = require('express')
  , stylus = require('stylus')
  , redis = require('redis')
  , http = require('http');

app = express();

//... require() route files

文件 路由/ main.js

//we can now access 'app' without redeclaring it or passing it in...

/*
 * GET home page.
 */

app.get('/', function(req, res, next){
  res.render('index');
});

//...


 类似资料:
  • 问题内容: 我刚刚开始使用新版本的Express(2.5.5),默认情况下会与和一起创建目录 路由内部有一个文件,其中包含: 默认情况下(从命令行运行后),这是main中的routes部分: 我在main中为redis客户端设置了一个变量: 我想知道如何访问包含在其中的文件中的方法(以及我在其中的任何其他模块) 问题答案: 我真的很喜欢Jamund的解决方案,但是我将概念扩展到了这一点: 索引上的

  • 问题内容: 我有这个: 我如何才能实际修改全局变量g_c? 问题答案: 通过在访问它的函数中声明它: 在Python文档说这个,有关声明: 全局语句是一个声明,适用于整个当前代码块。

  • 本文向大家介绍是否可以在C / C ++中访问局部变量的内存?,包括了是否可以在C / C ++中访问局部变量的内存?的使用技巧和注意事项,需要的朋友参考一下 让我们看一个示例,您可能可以访问超出其范围的局部变量的内存。 示例 输出结果 这可能会给出输出- 如前 ,此代码可以正常工作。我们只是在读取和写入内存,将USED用作x的地址。总的来说,您超出了foo的范围,该地址是指向某个随机内存区域的指

  • 问题内容: 我有一个main.go文件,其中有: 在我要声明,可在我的应用程序的任何地方访问的全局变量。有可能吗?我试过了: 但是,即使在同一包中,我也无法访问变量。 问题答案: 在顶层声明变量-在任何函数之外: 由于变量的名称以大写字母开头,因此在导入定义变量的包并使用包名对其进行限定时,变量将在当前包中通过其名称可用-在任何其他包中都可用。 这是另一个示例(同样在Go游乐场中:https :

  • 问题内容: 我有一个main.c,其全局变量名为。在main()中,我启动一个pthread,它侦听一个TCP连接并通过(progserver.c)运行该线程。意味着,该线程将永远不会返回。在main()中,输入rm.c(RM =资源管理器)中的函数。在rm.c中,我在pthread的progserver.c中读取了此变量的内容(两者均可通过进行访问)。 因此,问题是,当我在pthread中写入并

  • 问题内容: 如何在其他.go包/文件中的main.go中访问已声明/初始化的变量?不断告诉我变量未定义(我知道全局变量不好,但这只是用作时间戳记) 在main.go中 尝试访问其他.go文件中的StartTime,但保持未定义StartTime 问题答案: 我将改为“注入” starttime变量,否则在软件包之间会有循环依赖关系。 main.go otherpackage.go