FileSystemEntry: getParent()-Methode

Die Methode getParent() des FileSystemEntry-Interfaces erhält ein FileSystemDirectoryEntry.

Syntax

js
getParent(successCallback, errorCallback)
getParent(successCallback)

Parameter

successCallback

Eine Funktion, die aufgerufen wird, wenn das übergeordnete Verzeichniseintrag abgerufen wurde. Der Callback erhält einen einzigen Eingabeparameter: ein FileSystemDirectoryEntry-Objekt, das das übergeordnete Verzeichnis darstellt. Das übergeordnete Verzeichnis des Stammverzeichnisses wird als das Stammverzeichnis selbst betrachtet, daher achten Sie darauf.

errorCallback Optional

Ein optionaler Callback, der ausgeführt wird, wenn ein Fehler auftritt. Es gibt einen einzigen Parameter: ein DOMException, das beschreibt, was schiefgegangen ist.

Rückgabewert

Keiner (undefined).

Ausnahmen

DOMException.INVALID_STATE_ERR

Der Vorgang ist fehlgeschlagen, weil der Zustand des Dateisystems dies nicht zulässt. Dies kann beispielsweise passieren, wenn der zwischengespeicherte Zustand des Dateisystems vom tatsächlichen Zustand des Dateisystems abweicht.

DOMException.NOT_FOUND_ERR

Der angegebene Pfad konnte nicht gefunden werden.

DOMException.SECURITY_ERR

Sicherheitsbeschränkungen verbieten das Abrufen der Informationen des übergeordneten Verzeichnisses.

Beispiele

Dieses Beispiel benennt die Datei, die durch die Variable fileEntry angegeben wird, in "newname.html" um.

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.`,
    );
  },
);

Dies wird erreicht, indem zuerst ein FileSystemDirectoryEntry-Objekt abgerufen wird, das das Verzeichnis darstellt, in dem sich die Datei derzeit befindet. Dann wird moveTo() verwendet, um die Datei in diesem Verzeichnis umzubenennen.

Verwendung von Promises

Derzeit gibt es keine Promise-basierte Version dieser Methode. Sie können jedoch eine einfache Helferfunktion erstellen, um sie anzupassen, wie diese:

js
function getParentPromise(entry) {
  return new Promise((resolve, reject) => {
    entry.getParent(resolve, reject);
  });
}

Ein ähnlicher Ansatz kann an anderer Stelle in der File and Directory Entries API verwendet werden.

Spezifikationen

Specification
File and Directory Entries API
# dom-filesystementry-getparent

Browser-Kompatibilität

Siehe auch