主题
fs-extra
介绍
fs-extra 是 Node.js 的一个扩展库,提供了许多额外的文件系统操作功能,增强了原生 fs 模块的能力。
注意事项:
fs-extra是异步操作,所以大多数方法返回的是 Promise,使用.then()和.catch()进行错误处理,或者使用async/await语法。- 也提供了同步版本的方法,如
removeSync、readFileSync等。
快速开始
bash
npm i fs-extrajs
const fse = require('fs-extra')copy(src, dest[, options][, callback])
复制文件或目录。
参数:
src(string): 源路径。dest(string): 目标路径。options(object, 可选): 配置项:overwrite(boolean): 是否覆盖,默认true。errorOnExist(boolean): 目标已存在时是否抛错,默认false。
callback(function, 可选): 回调函数,接受err参数。
返回值:
Promise
emptyDir(path[, callback])
别名: mkdirs(), mkdirp()
清空目录内容,但不删除目录本身。
参数:
path(string): 目标目录路径。callback(function, 可选): 回调函数。
返回值:
Promise
ensureFile(path[, callback])
确保文件存在,如果文件不存在则创建。
参数:
path(string): 文件路径。callback(function, 可选): 回调函数。
返回值:
Promise
ensureDir(path[, callback])
确保目录存在,如果目录不存在则创建。
参数:
path(string): 目标目录路径。callback(function, 可选): 回调函数。
返回值:
Promise
ensureLink(srcpath, destpath[, callback])
确保目标路径是一个符号链接,如果目标路径不是符号链接则创建。
参数:
srcpath(string): 源路径。destpath(string): 目标路径。callback(function, 可选): 回调函数。
返回值:
Promise
ensureSymlink(srcpath, destpath[, type][, callback])
确保目标路径是一个符号链接,如果目标路径不是符号链接则创建。
参数:
srcpath(string): 源路径。destpath(string): 目标路径。type(string, 可选): 符号链接类型(dir或file)。callback(function, 可选): 回调函数。
返回值:
Promise
move(src, dest[, options][, callback])
移动文件或目录。
参数:
src(string): 源路径。dest(string): 目标路径。options(object, 可选): 配置项:overwrite(boolean): 是否覆盖目标文件,默认true。
callback(function, 可选): 回调函数。
返回值:
Promise
outputFile(path, data[, options][, callback])
将数据写入文件,如果文件不存在则创建文件。
参数:
path(string): 文件路径。data(string|Buffer): 要写入的数据。options(object, 可选): 配置项。callback(function, 可选): 回调函数。
返回值:
Promise
outputJson(path, object[, options][, callback])
将对象作为 JSON 写入文件,如果文件不存在则创建文件。
参数:
path(string): 文件路径。object(object): 要写入的对象。options(object, 可选): 配置项。callback(function, 可选): 回调函数。
返回值:
Promise
pathExists(path[, callback])
检查路径是否存在。
参数:
path(string): 路径。callback(function, 可选): 回调函数。
返回值:
Promise
readJson(path[, callback])
读取 JSON 文件并解析为 JavaScript 对象。
参数:
path(string): JSON 文件路径。callback(function, 可选): 回调函数。
返回值:
Promise
remove(path[, callback])
删除文件或目录。
参数:
path(string): 文件或目录路径。callback(function, 可选): 回调函数。
返回值:
Promise
writeJson(path, object[, options][, callback])
将 JavaScript 对象写入 JSON 文件。
参数:
path(string): 文件路径。object(object): 要写入的对象。options(object, 可选): 配置项。callback(function, 可选): 回调函数。
返回值:
Promise
