说说nodejs里实用的模块

简介:

随着NodeJS的流行,越来越多的第三方模块出现,但是当你开发一个好用的工具或者应用的时候,有没有感觉手头上缺少一些利器呢,虽然node本身提供了一些api,但是在开发效率上,有些第三方模块更胜一筹,下面说说社区里比较实用的模块.

功能类库

fs-extra(文件操作)

把这个放在第一个说,因为平时操作文件太频繁了,这个绝对可以提高你的开发效率,虽然node本身提供fs模块,但是在用户体验上还是不行,比如模拟一些linux命令rm -rf,cp -r,或者创建类似/foo/bar/foo.txt这样字符串的路径时,正是fs-extra的用武之地.

  • 安装: npm install --save fs-extra
  • API文档

下面演示一个简单的api,复制一个文件夹下内容到另一个文件夹下,更多详细请点击上面的文档链接

var fs = require('fs-extra')

fs.copy('/tmp/myfile', '/tmp/mynewfile', function(err) {
  if (err) return console.error(err)
  console.log("success!")
}) //copies file

fs.copy('/tmp/mydir', '/tmp/mynewdir', function(err) {
  if (err) return console.error(err)
  console.log("success!")
})

cheerio(jquery实现)

当你想在node里实现jquery的操作时,或者想在测试用例里实现dom操作时,cheerio正是你的不二选择.

  • 安装: npm install --save cheerio
  • API文档

下面演示一些它简单的api,查找某个元素的几种方式

// 1.先包装html元素,然后操作dom
var cheerio = require('cheerio'),
    $ = cheerio.load('<h2 class="title">Hello world</h2>');

$('h2.title').text('Hello there!');
$('h2').addClass('welcome');

// 2.直接在操作的时候传递html元素
$ = require('cheerio');
$('ul', '<ul id="fruits">...</ul>');

Node版本管理

n

n是一款node版本管理工具,使用非常方便,出自tj之手

nvm

nvm也是一款node版本管理工具,跟n相比,功能更多,比前者要重,想用哪个就看使用习惯了

开发工具

node-inspector

node-inspector是一款调试工具,非常好用,基于WebKit Web Inspector.

  • 安装: npm install -g node-inspector
  • 使用: node-debug *.js, 这里需要说下模块名跟运行命令名不一样
  • 使用文档

node-dev

node-dev是一款开发工具,用来处理当require的文件改变的,重新启动应用,跟supervisor,nodemon不一样的时,无需配置任何东西,而且使用node-notifier来发送桌面消息,包括应用状态改变以及错误信息.

nodemon

nodemon是一款开发工具,也是用来处理应用文件修改时,重新启动应用,跟node-dev不同的时,它配置非常灵活,可以支持多种情况

supervisor

supervisornodemon比较接近,都是监视应用文件修改时候重启应用程序,但是它在进程crash时,也可以重启应用.

目录
相关文章
|
1月前
|
存储 JavaScript 前端开发
nodejs os模块
nodejs os模块
26 0
|
3月前
|
缓存 JSON JavaScript
Node.js模块系统
Node.js模块系统
26 1
|
1月前
|
存储 缓存 JSON
Node.js有哪些模块系统
【8月更文挑战第12天】Node.js有哪些模块系统
31 3
|
15天前
[译] Node 模块中的 peer dependencies 是什么?
[译] Node 模块中的 peer dependencies 是什么?
|
2月前
|
存储 JavaScript 安全
Node中的AsyncLocalStorage 使用问题之AsyncLocalStorage与node:async_hooks模块的问题如何解决
Node中的AsyncLocalStorage 使用问题之AsyncLocalStorage与node:async_hooks模块的问题如何解决
|
2月前
|
JavaScript 前端开发
node.js 导入导出模块(CommonJS模块化规范,ES6模块化规范)
node.js 导入导出模块(CommonJS模块化规范,ES6模块化规范)
30 1
|
2月前
|
存储 JavaScript 前端开发
Node中的AsyncLocalStorage 使用问题之async_wrap 模块是如何与 libuv 交互的
Node中的AsyncLocalStorage 使用问题之async_wrap 模块是如何与 libuv 交互的
|
2月前
|
监控 JavaScript 前端开发
Node中的AsyncLocalStorage 使用问题之Node.js内部模块和外部模块的加载的问题如何解决
Node中的AsyncLocalStorage 使用问题之Node.js内部模块和外部模块的加载的问题如何解决
|
2月前
|
资源调度 前端开发 开发工具
阿里云云效操作报错合集之Node-Sass模块在构建过程中,出现报错"ENOENT: no such file or directory, scandir ",该如何处理
本合集将整理呈现用户在使用过程中遇到的报错及其对应的解决办法,包括但不限于账户权限设置错误、项目配置不正确、代码提交冲突、构建任务执行失败、测试环境异常、需求流转阻塞等问题。阿里云云效是一站式企业级研发协同和DevOps平台,为企业提供从需求规划、开发、测试、发布到运维、运营的全流程端到端服务和工具支撑,致力于提升企业的研发效能和创新能力。
|
2月前
|
JavaScript
【Node.js基础02】fs、path模块
【7月更文挑战第17天】
15 0