新 node .js和Express,我试图理解这两个似乎重叠的概念,路由和控制器.

我看到过简单应用程序无法实现的例子.js+routes/*,这似乎足以路由所需的各种请求.

然而,我也看到有人在谈论使用控制器,有些人认为这意味着更正式的MVC模型(???).

如果有人能帮我解开这个谜团,如果你们有一个在 node 中设置控制器的好例子,那就太好了.js+Express框架将非常棒!

谢谢

推荐答案

Express(以及Node)最酷的一点是它不会给你带来太多的意见;缺点之一是它不会把任何意见强加给你.因此,你是自由的(也是必需的!)自己建立任何这样的观点(模式).

在Express的例子中,你肯定可以使用MVC模式,如果你愿意,路由处理程序当然可以充当控制器的角色——但你必须这样设置.一个很好的例子可以在Express examples folder中找到,叫做mvc.如果你看一下lib/boot.js,你可以看到他们是如何设置这个示例,要求controllers目录中的每个文件,并根据控制器上创建的方法的名称动态生成Express routes的.

Node.js相关问答推荐

查询嵌套数组中的最后一个元素具有特定值的mongoDB集合中的文档

容器端口是容器内 node 应用程序的端口吗?

使用xml-crypto时出现NodeJS XPath解析错误

从MongoDB获取Tree数据

我的Node.js应用程序没有将Mongoose方法findByIdAndDelete作为函数进行检测

在内存中加载安全密钥安全吗?还是每次都从文件中读取?

通过PutObjectCommand上传AWS S3 PDF文件,结果为空PDF

Nestjs重写子类dto nodejs中的属性

为什么我的过滤器无法在我在下面编写的 Google Analytics 4 应用程序脚本代码中工作?我该如何修复它?

在全局对象上声明的函数

是否可以在 NodeJS 代码库中的每个函数之前和之后添加 console.log?

运行本地移动自动化测试时,在onPrepare钩子中,ERROR @wdio/cli:utils: A service failed in the 'onPrepare'

在 Node JS 中使用 url 链接而不是文件路径

[NodeJs 从 ADAL 升级到 MSAL]:无法在字符串上创建属性authenticationScheme

NestJS 共享模块的问题

node.js 中 res.setHeader 和 res.header 的区别

在多个文件 node.js 之间共享和修改变量

如何从 Node.js 应用程序Ping?

Puppeteer 等待所有图像加载然后截图

deno vs ts-node:有什么区别