好用的node库

开源库地址描述备注
qhttps://github.com/kriskowal/q

q模块不仅仅是为了解决回调地狱的问题,还能很大程度上辅助你进行一些需要并行,串行,定时等操作

参考:https://blog.csdn.net/ii1245712564/

article/details/51419533

百度“nodejs q模块”

requesthttps://github.com/request/request让node.js http请求变得超简单

参考:https://www.cnblogs.com/

liuchuanfeng/p/6686009.html

百度:“node  request”

request-progressrequest-progress - npm读取网络静态资源读取网络静态资源,可以以流的方式存储本地
cookie-parserhttps://github.com/expressjs/cookie-parserexpress框架处理cookie

express-session

https://github.com/expressjs/sessionexpress框架处理session
body-parserhttps://github.com/expressjs/body-parserexpress框架处理请求的body
node-base64-imagehttps://github.com/riyadhalnur/node-base64-imageDownload images from remote URLs or use local images and encode/decode them to Base64 string or Buffer object
nodemonhttps://github.com/remy/nodemonnode工程修改代码后自动重启
redishttps://github.com/NodeRedis/node_redis缓存,将数据存储在内存中,减少数据库访问次数
shouldhttps://github.com/tj/should.js简单的单元测试库
wechathttps://github.com/node-webot/wechat微信公共平台消息接口服务中间件
node-http-proxyhttps://github.com/nodejitsu/node-http-proxynode服务器设置代理express服务器内置设置代理的方法:Express behind proxies - Express 中文文档 | Express 中文网
event-streamhttps://github.com/dominictarr/event-streamnode流处理Node.js Stream(流) | 菜鸟教程
connect-history-api-fallbackhttps://github.com/bripkens/connect-history-api-fallback服务器端通过插件使用HTML5 History API,对于单页应用处理路由很重要connect-history-api-fallback库的理解_astonishqft的博客-CSDN博客_connect-history-api-fallback
node-htmlparserhttps://github.com/tautologistics/node-htmlparser解析HTML文档可防止XSS攻击
node-schedulehttps://github.com/node-schedule/node-schedulenode定时任务
croncron - npmnode定时任务
pm2https://github.com/Unitech/pm2pm2 是一个带有负载均衡功能的Node应用的进程管理器pm2-logrotate(https://github.com/keymetrics/pm2-logrotate)日志切割
foreverhttps://github.com/foreverjs/forevernode守护进程
easy-monitorhttps://github.com/hyj1991/easy-monitor轻量级实时 Node.js 内核性能监控分析工具
jschardetjschardet - npm判断文件编码判断文件编码是utf-8 / Big5等
csv

csv - npm 或 

csv-parser - npm

解析csv的库

以csv-parser为例,如果出现编码问题需要引入iconv库,代码见附录1

eggegg - 为企业级框架和应用而生企业级node框架自带多线程,基于cluster模块
nestDocumentation | NestJS - A progressive Node.js framework企业级node框架多线程应该需要依赖PM2(个人未测试)
electronjsElectron | Build cross-platform desktop apps with JavaScript, HTML, and CSS.使用 JavaScript, HTML 和 CSS 构建跨平台的桌面应用vscode就是基于这个框架开发的
commanderhttps://github.com/tj/commander.js/blob/HEAD/Readme_zh-CN.mdnode.js 命令行接口的完整解决方案,灵感来自 Ruby 的 commander
puppeteerhttps://github.com/puppeteer/puppeteer爬虫、自动化测试Puppeteer 是 Chrome 开发团队在 2017 年发布的一个 Node.js 包,用来模拟 Chrome 浏览器的运行。
cherriocheerionode端的jQuery库
gmgm - npm图片工具GraphicsMagick的链接库需要本地先安装GraphicsMagick,这个软件可以做到图片添加水印等,功能强大
sharpsharp - npm压缩图片
cross-envcross-env - npm解决命令行传参跨平台问题windows下传参可能提示错误
configconfig - npm为应用分环境提供配置文件
huskyhusky - npmgit钩子保证git注释更规范
prettierprettier - npm代码格式化工具
npm-run-allnpm-run-all - npm运行多个npm命令A CLI tool to run multiple npm-scripts in parallel or sequential.
systemjssystemjs - npm动态引入文件资源,类似require.js参考single-spa文档的例子:
single-spa | single-spa
concurrentlyconcurrently - npmpackage.json中运行多个命令类似npm run watch-js & npm run watch-less,但效果更好.
socket.ioSocket.IOsocket通信基于websocket协议的长链接库,支持nodejs、java、Python等
globglob - npmglob命令的js实现按规则(例如“src/**/**.entity.{ts,js}”)读取文件
npm-check-updatesnpm-check-updates - npm更新更新package.json中依赖到最新版本,除非指定的是固定版本

附录:

1、csv库的使用示例

import csv from 'csv-parser';
import { Iconv } from 'iconv';
import fs from 'fs';
const convertEncoding = new Iconv('GBK', 'UTF-8'); // GBK转UTF-8
const filePath = 'aa.csv'
fs.createReadStream(filePath)
    .pipe(convertEncoding)
    .pipe(csv())
    .on('data', (data) => {
        // 解析csv文件的内容,data为一行数据的json对象
        if (!!data) {
            // csv当前行数据解析出错,比如双引号使用不规范等
        }
    })
    .on('end', () => {
        // csv解析完毕
    })
    .on('error', () => {
        // csv文件解析出错
    });

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值