前端

npm包之mz-modules

2019-09-30  本文已影响0人  黑曼巴yk

前言

作用和mz类似,但是mz包装的是核心的Nodejs的API,mz-modules包装的是一些社区流行的模块

使用

const mkdirp = require('mz-modules').mkdirp;
// 或者下面引用方式
const mkdirp = require('mz-modules/mkdirp');

模块

mkdir

在Nodejs中像mkdir -p一样实现递归的mkdir

const mkdirp = require('mkdirp');
mkdirp('/tmp/foo/bar/baz', err => {
  if(err) {
    console.log(err);
  }
})

rimraf

在Nodejs中使用rm -rf一样实现删除

API

rimraf(f, [opts], callback)

glob

使用 **等匹配模式来匹配文件。当在命令中执行ls *.js之类的东西时或者将build/*放在.gitignore文件中时候。就是glob的匹配模式

glob("**/*.js", options, function (er, files) {
  
})

pump

pump解决了什么问题?

当使用标准的source.pipe(dest),如果dest出现了error,source不会被销毁,而且你无法提供一个回调当pipe被销毁了。pump就是解决上面的两个问题的

使用
var pump = require('pump')
var fs = require('fs')

var source = fs.createReadStream('/dev/random')
var dest = fs.createWriteStream('/dev/null')

pump(source, dest, function(err) {
  console.log('pipe finished', err)
})

setTimeout(function() {
  dest.destroy() // when dest is closed pump will destroy source
}, 1000)
上一篇下一篇

猜你喜欢

热点阅读