FileSystemDirectoryHandle:getDirectoryHandle() 方法
注意:此功能在Web Workers中可用。
getDirectoryHandle()
方法是 FileSystemDirectoryHandle
接口的方法,它返回一个 FileSystemDirectoryHandle
,用于在调用该方法的目录句柄中指定的名称的子目录。
语法
js
getDirectoryHandle(name)
getDirectoryHandle(name, options)
参数
name
-
一个表示要检索的子目录的
FileSystemHandle.name
的字符串。 options
可选-
一个包含检索到的子目录选项的可选对象。选项如下
create
可选-
一个布尔值,默认为
false
。设置为true
时,如果找不到目录,将创建一个具有指定名称的目录并将其返回。
返回值
一个 Promise
,它解析为 FileSystemDirectoryHandle
。
异常
NotAllowedError
DOMException
-
如果句柄的
PermissionStatus.state
不是'granted'
(如果create
选项设置为true
,则为readwrite
模式;如果create
选项设置为false
,则为read
模式),则抛出此异常。 TypeError
-
如果指定的名称不是有效的字符串,或者包含会干扰本机文件系统的字符,则抛出此异常。
TypeMismatchError
DOMException
-
如果返回的条目是文件而不是目录,则抛出此异常。
NotFoundError
DOMException
-
如果当前条目未找到,或者目标目录不存在且
create
选项设置为false
,则抛出此异常。
示例
以下示例返回具有指定名称的目录句柄,如果目录不存在,则会创建它。
js
const dirName = "directoryToGetName";
// assuming we have a directory handle: 'currentDirHandle'
const subDir = currentDirHandle.getDirectoryHandle(dirName, { create: true });
规范
规范 |
---|
文件系统标准 # api-filesystemdirectoryhandle-getdirectoryhandle |
浏览器兼容性
BCD 表仅在启用了 JavaScript 的浏览器中加载。