nodejs使用require()函数包含所有路由文件中的必需包

时间:2017-07-06 19:10:48

标签: node.js passport.js

您好我是nodeJs的新手,目前正在使用node开发Rest API。我计划用一个好的文件夹结构开发它,所以我可以轻松扩展它。我根据业务逻辑使用了几个路由文件。

ex: - authRoutes,profileRoutes,orderRoutes ......

目前在每个路径文件中我都必须包含以下代码

var express    = require('express');
var router = express.Router();
var jwt = require('jsonwebtoken');
var passport = require('passport');

我的问题是,在所有路径文件中使用上面的代码段是否完全正常(我关于代码优化/编码标准和执行速度,或者有更好的方法)。 / p>

如果你能解释require()函数的功能,那就更好了。

由于

1 个答案:

答案 0 :(得分:0)

根据我的经验,这是非常标准的。我建议您阅读this question and answer以了解更多有关它影响程序速度的方法。

TL; require()

的DR

当您运行的代码行包含因require()而存在的变量时,例如

var https = require('https');
https.get(url, function(response) {...});

编译器读取它并进入https模块文件夹,并查找.get函数。

但是,如果您尝试require()某个JavaScript文件,例如analysis.js,则必须从当前所在的文件导航到该文件。例如,如果您想要的文件与您所在的文件位于同一级别,则可以像这样访问它:

var analysis = require('./analysis.js');
//Let analysis have a function called analyzeWeather
analysis.analyzeWeather(weather_data);

这些代码行与上面略有不同。在这个require()语句中,我们说使用此名称获取.js文件,分析。一旦需要,您可以访问该analysis.js文件中的任何公共函数。

编辑

  • require()文件添加了.js示例。