javascript - 像这样启动 express "const app = require(' express')()"被认为是不好的做法吗?

标签 javascript node.js express

所以标题说明了一切。从未见过有人使用这种语法。

const app = require('express')()

我喜欢保持主 js 文件精简,并将所有内容都放在模块中,所以我只有 15 行,包括注释。

Google 没有帮助,也没有在这里找到答案。

按需调用 express 是一种不好的做法吗?

最佳答案

一般来说,您的代码应该是可靠地满足您的要求的最简单和最清晰的方式。在几乎任何人的书中,任何遵循这些简单准则的代码都不会被视为不良做法。

对于所需的编码风格可能还有其他影响,例如团队风格指南、文件/模块/项目中已经存在的编码风格以及您可能希望为测试、调试或重用做的某些事情。但是,由于您没有提到任何这些影响,我假设它们不存在于此。

因此,考虑到第一段,只要您不需要访问本模块其他地方的 express 模块,就可以执行以下操作:

const app = require('express')();

确实是实现目标的最简单明了的方法,不应被视为不良做法 - 事实上,它应被视为良好做法


另一方面,如果您这样做:

const app = require('express')();

....


const mainRouter = require('express').Router();


....

const subRouter = require('express').Router();


....

app.use(require('express').static('public'));

然后,如果您将 express 模块加载到它自己的变量中,然后您可以在该模块的其他任何地方使用它,您将拥有更简单和更少冗余的代码(并且可能更快一些,因为函数调用更少):

const express = require('express');
const app = express();

....


const mainRouter = express.Router();


....

const subRouter = express.Router();


....

app.use(express.static('public'));

关于javascript - 像这样启动 express "const app = require(' express')()"被认为是不好的做法吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42169844/

相关文章:

javascript - 具有堆叠粘性组标题的可滚动 div

file - Node.js:处理文件上传, 'data' 事件从未调用

node.js - 使用 Node js(express) 在 mongodb atlas 中发布时出现 UnknownReplWriteConcern 错误

php - 来自 Javascript 的查询字符串参数无法处理 PHP 脚本

javascript - 如何在 JS 中创建采购订单表单

javascript - 仅在鼠标悬停 2 秒时才进行 AJAX 调用

javascript - 将对象数组转换为每个对象的特定属性数组

node.js - socket.io 流式传输二进制数据

node.js - Passport 身份验证重定向到绝对 URL 失败

mysql - 在 React/Express 中插入对象而不是 MySQL 中的字符串