2020年,你应该知道 23 个非常有用的 NodeJs 库

时间:2022-07-24
本文章向大家介绍2020年,你应该知道 23 个非常有用的 NodeJs 库,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

作者:Lokender Singh 译者:前端小智 来源:medium

作为专业的开发人员,我们必须不断更新最新和最好的库,因为知道好的库,那么开发过程就可以依赖于它们,这会节省我们很多时间也有助于构建高质量的软件。

下面列表常见且好用的 NodeJS 库,反正我自己是已经收藏了,以备将来会用到 ?

1. Express

地址:https://www.npmjs.com/package/express

快速、无约束、极简的node web框架。

2. Socket.io

地址:https://www.npmjs.com/package/socket.io

Socket.IO 支持基于事件的实时双向通信。

3. Body-parser

地址:https://www.npmjs.com/package/body-parser

body-parser是非常常用的一个express中间件,作用是对http请求体进行解析。

4. Cors

地址:https://www.npmjs.com/package/cors

CORS 是用于提供Connect/Express中间件的node.js程序包,可用于启用具有各种选项的CORS

5. Passport

地址:https://www.npmjs.com/package/passport

Passport.js 是一个简单的、非侵入式的 Node.js 身份验证中间件,它可以集成到任何基于 Express.js 的 web 应用中

6. Multer

地址:https://www.npmjs.com/package/multer

Multer是一个Node.js中间件,用于处理 multipart/form-data 类型的表单数据,主要用于文件上传。

7. Axios

地址:https://www.npmjs.com/package/axios

于 Promise 的 HTTP客 户端,用于浏览器和 node.js

8. Morgan

地址:https://www.npmjs.com/package/morgan

morgan是express默认的日志中间件,也可以脱离express,作为node.js的日志组件单独使用。

9. Http-errors

地址:https://www.npmjs.com/package/http-errors

轻松创建 Express,Koa,Connect 等的 HTTP 错误。

10. Dotenv

地址:https://www.npmjs.com/package/dotenv

由于项目不同需求,需要配置不同环境变量,按需加载不同的环境变量文件,使用dotenv,可以完美解决这一问题。

使用dotenv,只需要将程序的环境变量配置写在.env文件中。

11. Faker

地址:https://www.npmjs.com/package/faker

这是一个很棒的 node 模块,用来 mock 数据。Faker 有自己的 API,而且功能非常丰富,这一切都要归功于发明它的人 Marak 。它几乎可以覆盖到任何你想用的用例,在 Github 上的文档也可以帮你分分钟熟悉它的用法。

12. Nodemailer

地址:https://www.npmjs.com/package/nodemailer

Nodemailer是nodejs中的邮件发送模块。

13. Sequelize

地址:https://www.npmjs.com/package/sequelize

什么是ORM?

简单的讲就是对SQL查询语句的封装,让我们可以用OOP的方式操作数据库,优雅的生成安全、可维护的SQL代码。直观上,是一种Model和SQL的映射关系。

Sequelize 是一款基于Nodejs功能强大的异步ORM框架。

同时支持PostgreSQL, MySQL, SQLite and MSSQL多种数据库,很适合作为Nodejs后端数据库的存储接口,为快速开发Nodejs应用奠定扎实、安全的基础。

既然Nodejs的强项在于异步,没有理由不找一个强大的支持异步的数据库框架,与之配合。

14 Mongoose

地址:https://www.npmjs.com/package/mongoose

MongoosemongoDB的一个对象模型库,封装了mongoDB对文档的一些增删改查等常用方法,让nodejs操作mongoDB数据库变得更容易。

15 Jest

地址:https://www.npmjs.com/package/jest

Jest 是由 Facebook 推出的一个前端测试框架,具有许多非常好的特性,譬如执行速度快、API友好、自动监控、Snapshot、测试覆盖率、Mock等各种特性,并且适用于Babel、TypeScript、Node、React、Angular、Vue等。

16. Moment

地址:https://www.npmjs.com/package/moment

一个轻量级的JavaScript日期库,用于解析,验证,操作和格式化日期。

17. lodash

地址:https://www.npmjs.com/package/lodash

Lodash 减少数组、数字、对象、字符串等工作的麻烦,它让 JS 变得更容易。

18. chalk

地址:https://www.npmjs.com/package/chalk

chal 可译为“粉笔”,node 终端样式库,主要功能为使输出不再单调,添加文字背景,改变字体颜色

19. validator

地址:https://www.npmjs.com/package/validator

轻量,快捷,易扩展的前端的验证工具,无其他包依赖无样式,可以适合绝大部分使用情景,开发人员可根据项目环境自行组装反馈的错误信息给用户。

20. Cheerio

地址:https://www.npmjs.com/package/cheerio

cheerio 用来解析html非常方便,就像在浏览器中使用jquery一样。

21. JSDoc

地址:https://www.npmjs.com/package/jsdoc

JSDoc是一个根据javascript文件中注释信息,生成JavaScript应用程序或库、模块的API文档 的工具。

22. Helmet

地址:https://www.npmjs.com/package/helmet

Helmet是一系列帮助增强Node.JS之Express/Connect等Javascript Web应用安全的中间件。

一些著名的对Web攻击有XSS跨站脚本, 脚本注入 clickjacking 以及各种非安全的请求等对Node.js的Web应用构成各种威胁,使用Helmet能帮助你的应用避免这些攻击。

23. Crypto-js

地址:https://www.npmjs.com/package/crypto-js

CryptoJS (crypto.js) 为 JavaScript 提供了各种各样的加密算法。