2020年,你應(yīng)該知道 23 個非常有用的 NodeJs 庫
作為專業(yè)的開發(fā)人員,我們必須不斷更新最新和最好的庫,因?yàn)橹篮玫膸?,那么開發(fā)過程就可以依賴于它們,這會節(jié)省我們很多時間也有助于構(gòu)建高質(zhì)量的軟件。
下面列表常見且好用的 NodeJS 庫,反正我自己是已經(jīng)收藏了,以備將來會用到 😜
1. Express
地址:https://www.npmjs.com/package/express
快速、無約束、極簡的node web框架。
2. Socket.io
地址:https://www.npmjs.com/package/socket.io
Socket.IO 支持基于事件的實(shí)時雙向通信。
3. Body-parser
地址:https://www.npmjs.com/package/body-parser
body-parser是非常常用的一個express中間件,作用是對http請求體進(jìn)行解析。
4. Cors
地址:https://www.npmjs.com/package/cors
CORS 是用于提供Connect/Express中間件的node.js程序包,可用于啟用具有各種選項(xiàng)的CORS。
5. Passport
地址:https://www.npmjs.com/package/passport
Passport.js 是一個簡單的、非侵入式的 Node.js 身份驗(yàn)證中間件,它可以集成到任何基于 Express.js 的 web 應(yīng)用中
6. Multer
地址:https://www.npmjs.com/package/multer
Multer是一個Node.js中間件,用于處理 multipart/form-data 類型的表單數(shù)據(jù),主要用于文件上傳。
7. Axios
地址:https://www.npmjs.com/package/axios
于 Promise 的 HTTP客 戶端,用于瀏覽器和 node.js
8. Morgan
地址:https://www.npmjs.com/package/morgan
morgan是express默認(rèn)的日志中間件,也可以脫離express,作為node.js的日志組件單獨(dú)使用。
9. Http-errors
地址:https://www.npmjs.com/package/http-errors
輕松創(chuàng)建 Express,Koa,Connect 等的 HTTP 錯誤。
10. Dotenv
地址:https://www.npmjs.com/package/dotenv
由于項(xiàng)目不同需求,需要配置不同環(huán)境變量,按需加載不同的環(huán)境變量文件,使用dotenv,可以完美解決這一問題。
使用dotenv,只需要將程序的環(huán)境變量配置寫在.env文件中。
11. Faker
地址:https://www.npmjs.com/package/faker
這是一個很棒的 node 模塊,用來 mock 數(shù)據(jù)。Faker 有自己的 API,而且功能非常豐富,這一切都要?dú)w功于發(fā)明它的人 Marak 。它幾乎可以覆蓋到任何你想用的用例,在 Github 上的文檔也可以幫你分分鐘熟悉它的用法。
12. Nodemailer
地址:https://www.npmjs.com/package/nodemailer
Nodemailer是nodejs中的郵件發(fā)送模塊。
13. Sequelize
地址:https://www.npmjs.com/package/sequelize
什么是ORM?
簡單的講就是對SQL查詢語句的封裝,讓我們可以用OOP的方式操作數(shù)據(jù)庫,優(yōu)雅的生成安全、可維護(hù)的SQL代碼。直觀上,是一種Model和SQL的映射關(guān)系。
Sequelize 是一款基于Nodejs功能強(qiáng)大的異步ORM框架。
同時支持PostgreSQL, MySQL, SQLite and MSSQL多種數(shù)據(jù)庫,很適合作為Nodejs后端數(shù)據(jù)庫的存儲接口,為快速開發(fā)Nodejs應(yīng)用奠定扎實(shí)、安全的基礎(chǔ)。
既然Nodejs的強(qiáng)項(xiàng)在于異步,沒有理由不找一個強(qiáng)大的支持異步的數(shù)據(jù)庫框架,與之配合。
14 Mongoose
地址:https://www.npmjs.com/package/mongoose
Mongoose是mongoDB的一個對象模型庫,封裝了mongoDB對文檔的一些增刪改查等常用方法,讓nodejs操作mongoDB數(shù)據(jù)庫變得更容易。
15 Jest
地址:https://www.npmjs.com/package/jest
Jest 是由 Facebook 推出的一個前端測試框架,具有許多非常好的特性,譬如執(zhí)行速度快、API友好、自動監(jiān)控、Snapshot、測試覆蓋率、Mock等各種特性,并且適用于Babel、TypeScript、Node、React、Angular、Vue等。
16. Moment
地址:https://www.npmjs.com/package/moment
一個輕量級的JavaScript日期庫,用于解析,驗(yàn)證,操作和格式化日期。
17. lodash
地址:https://www.npmjs.com/package/lodash
Lodash 減少數(shù)組、數(shù)字、對象、字符串等工作的麻煩,它讓 JS 變得更容易。
18. chalk
地址:https://www.npmjs.com/package/chalk
chal 可譯為“粉筆”,node 終端樣式庫,主要功能為使輸出不再單調(diào),添加文字背景,改變字體顏色
19. validator
地址:https://www.npmjs.com/package/validator
輕量,快捷,易擴(kuò)展的前端的驗(yàn)證工具,無其他包依賴無樣式,可以適合絕大部分使用情景,開發(fā)人員可根據(jù)項(xiàng)目環(huán)境自行組裝反饋的錯誤信息給用戶。
20. Cheerio
地址:https://www.npmjs.com/package/cheerio
cheerio 用來解析html非常方便,就像在瀏覽器中使用jquery一樣。
21. JSDoc
地址:https://www.npmjs.com/package/jsdoc
JSDoc是一個根據(jù)javascript文件中注釋信息,生成JavaScript應(yīng)用程序或庫、模塊的API文檔 的工具。
22. Helmet
地址:https://www.npmjs.com/package/helmet
Helmet是一系列幫助增強(qiáng)Node.JS之Express/Connect等Javascript Web應(yīng)用安全的中間件。
一些著名的對Web攻擊有XSS跨站腳本, 腳本注入 clickjacking 以及各種非安全的請求等對Node.js的Web應(yīng)用構(gòu)成各種威脅,使用Helmet能幫助你的應(yīng)用避免這些攻擊。
23. Crypto-js
地址:https://www.npmjs.com/package/crypto-js
CryptoJS (crypto.js) 為 JavaScript 提供了各種各樣的加密算法。
作者:Lokender Singh 譯者:前端小智 來源:medium
原文:https://blog.bitsrc.io/23-insanely-useful-nodejs-you-should-know-in-2020-5a9b570d5416
本文轉(zhuǎn)載自微信公眾號「大遷世界」,可以通過以下二維碼關(guān)注。轉(zhuǎn)載本文請聯(lián)系大遷世界公眾號。