Window: showSaveFilePicker() Methode

Limited availability

This feature is not Baseline because it does not work in some of the most widely-used browsers.

Sicherer Kontext: Diese Funktion ist nur in sicheren Kontexten (HTTPS) in einigen oder allen unterstützenden Browsern verfügbar.

Experimentell: Dies ist eine experimentelle Technologie
Überprüfen Sie die Browser-Kompatibilitätstabelle sorgfältig vor der Verwendung auf produktiven Webseiten.

Die showSaveFilePicker() Methode des Window Interface zeigt einen Dateiauswahldialog, der einem Benutzer ermöglicht, eine Datei zu speichern. Entweder durch Auswahl einer bestehenden Datei oder durch Eingabe eines Namens für eine neue Datei.

Syntax

js
showSaveFilePicker()
showSaveFilePicker(options)

Parameter

options Optional

Ein Objekt, das Optionen enthält, die wie folgt sind:

excludeAcceptAllOption Optional

Ein boolescher Wert, der standardmäßig false ist. Standardmäßig sollte der Auswahldialog eine Option enthalten, um keine Dateitypfilter anzuwenden (angestoßen mit der Typoption unten). Wenn diese Option auf true gesetzt wird, ist diese Option nicht verfügbar.

id Optional

Durch die Angabe einer ID kann der Browser verschiedene Verzeichnisse für unterschiedliche IDs merken. Wenn dieselbe ID für einen anderen Auswahldialog verwendet wird, öffnet der Dialog im selben Verzeichnis.

startIn Optional

Ein FileSystemHandle oder ein bekanntes Verzeichnis ("desktop", "documents", "downloads", "music", "pictures" oder "videos") in dem der Dialog geöffnet werden soll.

suggestedName Optional

Ein String. Der vorgeschlagene Dateiname.

types Optional

Ein Array von erlaubten Dateitypen zum Speichern. Jedes Element ist ein Objekt mit den folgenden Optionen:

description Optional

Eine optionale Beschreibung der Kategorie der erlaubten Dateitypen. Standardmäßig ein leerer String.

accept

Ein Object mit den Schlüsseln gesetzt auf den MIME-Typ und den Werten als ein Array von Dateierweiterungen (siehe unten für ein Beispiel).

Rückgabewert

Ein Promise, dessen Fulfillment-Handler ein FileSystemFileHandle Objekt erhält.

Ausnahmen

AbortError DOMException

Wird ausgelöst, wenn der Benutzer den Dateiauswahldialog ohne Auswahl oder Eingabe einer Datei schließt oder wenn der User-Agent irgendwelche ausgewählten Dateien als zu sensibel oder gefährlich erachtet.

SecurityError DOMException

Wird ausgelöst, wenn der Aufruf durch die Same-Origin-Policy blockiert wurde oder wenn er nicht über eine Benutzerinteraktion wie einen Tastendruck aufgerufen wurde.

TypeError

Wird ausgelöst, wenn akzeptierte Typen nicht verarbeitet werden können, was passieren kann, wenn:

  • Jeder Schlüsselstring der accept Optionen eines Elements in den types Optionen keinen gültigen MIME-Typ parsen kann.
  • Jeder Wertstring der accept Optionen eines Elements in den types Optionen ungültig ist, zum Beispiel, wenn er nicht mit . beginnt und mit . endet oder irgendwelche ungültigen Codepunkte enthält und seine Länge mehr als 16 ist.
  • Die types Optionen leer sind und die excludeAcceptAllOption Optionen true sind.

Sicherheit

Transiente Benutzeraktivierung ist erforderlich. Der Benutzer muss mit der Seite oder einem UI-Element interagieren, damit diese Funktion funktioniert.

Beispiele

Die folgende Funktion zeigt einen Dateiauswahldialog, mit hervorgehobenen Textdateien zur Auswahl.

js
async function getNewFileHandle() {
  const opts = {
    types: [
      {
        description: "Text file",
        accept: { "text/plain": [".txt"] },
      },
    ],
  };
  return await window.showSaveFilePicker(opts);
}

Spezifikationen

Specification
File System Access
# api-showsavefilepicker

Browser-Kompatibilität

Siehe auch