每周npm模块源码解读:cpy
2018-09-16 字数统计:763 字 阅读时长 ≈ 1 分钟

周2018.9.10 ~ 2018.9.16

前言

模块名:cpy

github: https://github.com/sindresorhus/cpy

描述:可以用更好的方式去一次性复制多个文件

适合人群:至少看过一遍源码

正文

使用模块 arrify 将源路径转化为数组形式,然后通过模块 globby 得到需要复制的相应文件。

使用了 Promise.all 以便多文件的同步复制,主要是每个文件都需要被复制成功或被失败。
然后通过事件监听器和触发器得到多文件复制的状态。

结语

作者使用模块 globbycp-file 实现了一次性复制多文件,然后通过事件监听器的形式与 cp-file.on 组合成了可以知道多文件复制的progress。