FileSystemDirectoryHandle: resolve() 方法
注意:此功能在Web Workers中可用。
FileSystemDirectoryHandle
接口的 resolve()
方法返回一个从父句柄到指定子项的目录名称的 Array
,子项的名称作为数组的最后一个元素。
语法
js
resolve(possibleDescendant)
参数
possibleDescendant
-
要返回其相对路径的
FileSystemHandle
。
返回值
一个Promise
,解析为一个包含字符串的Array
,如果 possibleDescendant
不是此 FileSystemDirectoryHandle
的后代,则返回 null
。
异常
不会抛出任何异常。
示例
以下异步函数使用 resolve()
查找选定文件相对于指定目录句柄的路径。
js
async function returnPathDirectories(directoryHandle) {
// Get a file handle by showing a file picker:
const [handle] = await self.showOpenFilePicker();
if (!handle) {
// User cancelled, or otherwise failed to open a file.
return;
}
// Check if handle exists inside our directory handle
const relativePaths = await directoryHandle.resolve(handle);
if (relativePaths === null) {
// Not inside directory handle
} else {
// relativePath is an array of names, giving the relative path
for (const name of relativePaths) {
// log each entry
console.log(name);
}
}
}
规范
规范 |
---|
文件系统标准 # api-filesystemdirectoryhandle-resolve |
浏览器兼容性
BCD 表格仅在浏览器中加载