Skip to content

前置库

1. fs-extra

文件读写推荐使用fs-extra,地址:https://www.npmjs.com/package/fs-extra

安装方式: pnpm add fs-extra

1.1 fs-extra 对比fs增强在什么地方?

  1. Promise 支持: fs-extra 提供了所有方法的 Promise 版本,这意味着你可以使用 async/await 语法来编写更清晰、更简洁的异步代码,而不必依赖回调函数。
  2. 递归操作: fs-extra 提供了递归创建和删除目录的方法,如 mkdirsrmrf(现在分别是 mkdirp 和 rimraf),而原生的 fs 模块需要你自己来实现这些功能。
  3. 复制文件和目录: fs-extra 有一个 copy 方法,可以用于复制文件和目录,包括递归复制整个目录树。
  4. 移动文件和目录: fs-extra 提供了一个 move 方法,用于移动文件和目录,这在原生的 fs 模块中是不直接支持的。
  5. 检查路径类型: fs-extra 提供了一个 pathExists 方法,用于检查路径是否存在,以及它是文件还是目录。
  6. 更多的实用工具: fs-extra 还提供了其他一些有用的工具函数,例如 emptyDir(清空目录内容)、ensureFile(确保文件存在,如果不存在则创建)、outputFile(将内容写入文件,如果文件不存在则创建)等。
  7. 更好的错误处理: 在某些情况下,fs-extra 提供了更好的错误处理,它尝试解决一些在 fs 模块中抛出错误的情况。

fs-extra 的目标是提供一个完整的文件操作解决方案,让开发者能够更容易地进行文件系统操作,而不必重复造轮子。它被设计为与 fs 模块兼容,所以你可以无缝地替换 require('fs') 为 require('fs-extra'),并开始使用这些额外的功能。