FileSystemEntry: метод moveTo()
Устаревший: Данная функция больше не рекомендуется. Хотя некоторые браузеры могут её всё ещё поддерживать, она, возможно, уже удалена из соответствующих веб-стандартов, находится в процессе удаления или поддерживается только для совместимости. Пожалуйста, избегайте её использования и обновите существующий код, если это возможно; см. таблицу совместимости внизу этой страницы для принятия решения. Имейте в виду, что эта функция может перестать работать в любой момент.
Нестандартный: Эта функция нестандартна и не соответствует стандартам. Не используйте её на продуктивных сайтах, ориентированных на веб: она не будет работать для каждого пользователя. Также могут быть большие несовместимости между реализациями, и поведение может измениться в будущем.
Метод moveTo() интерфейса FileSystemEntry перемещает файл, указанный записью, в новое местоположение в файловой системе или переименовывает файл, если целевой каталог такой же, как исходный.
Существуют некоторые типичные ограничения на то, что вы можете сделать:
- Каталог не может быть перемещён в самого себя.
- Запись не может быть перемещена в родительский каталог, если не указано новое имя. Указание нового имени позволяет
moveTo()выполнять операцию переименования. - При перемещении каталога перемещение всегда рекурсивное; вы не можете пропустить подкаталоги.
- Вы не можете переместить файл так, чтобы он заменил существующий каталог, и вы не можете переместить каталог так, чтобы он заменил существующий файл. Однако файл может заменить файл, а каталог может заменить каталог.
- Вы можете перезаписать каталог только если он пустой.
Синтаксис
moveTo(newParent, newName) moveTo(newParent, newName, successCallback) moveTo(newParent, newName, successCallback, errorCallback)
Параметры
newParent-
Объект
FileSystemDirectoryEntry, указывающий целевой каталог для операции перемещения. newNameНеобязательно-
Если этот параметр предоставлен, запись переименовывается в строку с новым именем файла или каталога.
successCallbackНеобязательно-
Функция, которая вызывается, когда операция перемещения выполняется успешно. Принимает один входной параметр: объект на основе
FileSystemEntry, предоставляющий новые данные перемещённого элемента. errorCallbackНеобязательно-
Необязательный обратный вызов, который выполняется, если при перемещении элементов возникла ошибка. Есть один параметр:
FileError, описывающий причину ошибки.
Возвращаемое значение
None (undefined).
Исключения
FileError.INVALID_MODIFICATION_ERR-
Запрашиваемая операция включает в себя невозможное изменение, например, перемещение каталога в себя или один из своих дочерних каталогов, или копирование элемента в том же каталоге без переименования.
FileError.QUOTA_EXCEEDED_ERR-
Операция превысила квоту хранилища пользователя или свободного места в хранилище недостаточно для завершения операции.
Примеры
Этот пример демонстрирует, как временный файл журнала может быть перемещён в более постоянный каталог "log", когда его размер превышает один мегабайт.
workingDirectory.getFile(
"tmp/log.txt",
{},
(fileEntry) => {
fileEntry.getMetadata((metadata) => {
if (metadata.size > 1048576) {
workingDirectory.getDirectory(
"log",
{},
(dirEntry) => {
fileEntry.moveTo(dirEntry);
},
handleError,
);
}
});
},
handleError,
);
Совместимость с браузерами
| Рабочий стол | Мобильные устройства | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox для Android | Opera Android | Safari на IOS | Samsung Internet | WebView Android | |
moveTo |
8 | 79 | Нет | Нет | Нет | 18 | Нет | 14 | Нет | 1.0 | ≤37 |
См. также
© 2005–2024 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/FileSystemEntry/moveTo