Как я могу запретить API доступа к файловой системе сохранять файл при возникновении ошибки?

При сохранении файла с использованием API доступа к файловой системе, если между записью и сохранением нового файла возникает ошибка, файл все равно создается и сохраняется.

Есть ли способ предотвратить создание и сохранение этого файла?

В качестве примера с использованием следующего кода перед запуском функции сохранения выдается ошибка. Эта ошибка препятствует запуску функции сохранения; однако файл все равно создается.

2 ответа

все предупреждения могут быть созданы с помощью валидаций

Например, создайте класс, который проверяет параметры, которые должны быть выполнены, и, если проверка верна, выполните функцию сохранения.

Ваш код уже работает, я переместил только последние строки, потому что они не нужны.

Я протестировал ваш код, создав папку, которая не может создавать файлы внутри

      async function saveFile() {
  const options = {
    types: [{
      description: 'Text File',
      accept: {
        'text/plain': '.txt'
      },
    }],
    excludeAcceptAllOption: true,
  }

  // here i make the changes
  try {
    fileHandle = await window.showSaveFilePicker(options);
  save();

  } catch (err) {
    alert('failed')
  }

}
Другие вопросы по тегам