FileSystemEntry:getParent() 方法
FileSystemEntry
接口的方法 getParent()
获取一个 FileSystemDirectoryEntry
。
语法
js
getParent(successCallback, errorCallback)
getParent(successCallback)
参数
successCallback
-
检索到父目录条目时调用的函数。回调函数接收一个输入参数:一个
FileSystemDirectoryEntry
对象,表示父目录。根目录的父目录被认为是根目录本身,因此请务必注意这一点。 errorCallback
可选-
如果发生错误,则执行可选的回调函数。它有一个参数:一个
DOMException
,描述了错误原因。
返回值
无 (undefined
).
异常
FileError.INVALID_STATE_ERR
-
操作失败,因为文件系统的状态不允许执行此操作。例如,如果文件系统的缓存状态与文件系统的实际状态不同,则可能会发生这种情况。
FileError.NOT_FOUND_ERR
-
找不到指定的路径。
FileError.SECURITY_ERR
-
安全限制禁止获取父目录的信息。
示例
此示例将变量 fileEntry
指定的文件重命名为 "newname.html"
。
js
fileEntry.getParent(
(parent) => {
fileEntry.moveTo(parent, "newname.html", (updatedEntry) => {
console.log(`File ${fileEntry.name} renamed to newname.html.`);
});
},
(error) => {
console.error(
`An error occurred: Unable to rename ${fileEntry.name} to newname.html.`,
);
},
);
这是通过首先获取一个 FileSystemDirectoryEntry
对象来实现的,该对象表示文件当前所在的目录。然后使用 moveTo()
在该目录中重命名文件。
使用 Promise
目前,此方法没有 Promise
版本。但是,您可以创建一个简单的辅助函数来适配它,如下所示
js
function getParentPromise(entry) {
return new Promise((resolve, reject) => {
entry.getParent(resolve, reject);
});
}
可以在文件和目录条目 API 的其他地方采用类似的方法。
规范
规范 |
---|
文件和目录条目 API # dom-filesystementry-getparent |
浏览器兼容性
BCD 表格仅在启用 JavaScript 的浏览器中加载。