我是Nodejs的新手并表达,我正在浏览一些教程和示例,偶然发现
这个app.js里面 var router = require(' ./ router')(app);
这样做的目的是什么?
这是路由器文件中的内容
module.exports = function (app) {
// The signup route
app.use('/signup', require('./routes/signup'));
}
答案 0 :(得分:0)
您从其他文件导入路由器。
这是一种脚手架技术。模型,视图,控制器和路由器保存在不同的文件中,然后将其导入main.js
require()
。
您可以创建项目模块化,通过团队进行扩展和开发更容易。
答案 1 :(得分:0)
这是javascript中常见的模块化模式,常见于节点。这是你获得的:
您可以将代码模块化为单独的文件,这样就不会有大块的代码块。
通过要求将模块作为函数,您可以传递一些变量常量(例如应用程序配置或数据库入口点)。
您可以使用清除应用程序全局对象的module.exports
来选择要公开的内容以及要保密的内容。
在您提供的代码段中,您将应用配置传递到路由文件,您将在其中创建依赖于变量的路由。如果该路由依赖于内部逻辑,则该逻辑可以限定为routes.js文件,而不是暴露给应用程序的其余部分。