FileSystemDirectoryHandle: getDirectoryHandle() method
Baseline 2023
Newly available
Since March 2023, this feature works across the latest devices and browser versions. This feature might not work in older devices or browsers.
Secure context: This feature is available only in secure contexts (HTTPS), in some or all supporting browsers.
Note: This feature is available in Web Workers.
The getDirectoryHandle()
method of the
FileSystemDirectoryHandle
interface returns a
FileSystemDirectoryHandle
for a subdirectory with the specified name
within the directory handle on which the method is called.
Syntax
getDirectoryHandle(name)
getDirectoryHandle(name, options)
Parameters
name
-
A string representing the
FileSystemHandle.name
of the subdirectory you wish to retrieve. options
Optional-
An optional object containing options for the retrieved subdirectory. Options are as follows:
create
Optional-
A boolean value, which defaults to
false
. When set totrue
if the directory is not found, one with the specified name will be created and returned.
Return value
A Promise
which resolves with a FileSystemDirectoryHandle
.
Exceptions
NotAllowedError
DOMException
-
Thrown if the
PermissionStatus.state
for the handle is not'granted'
inreadwrite
mode if thecreate
option is set totrue
or inread
mode if thecreate
option is set tofalse
. TypeError
-
Thrown if the name specified is not a valid string or contains characters that would interfere with the native file system.
TypeMismatchError
DOMException
-
Thrown if the returned entry is a file and not a directory.
NotFoundError
DOMException
-
Thrown if the current entry is not found or if the target directory doesn't exist and the
create
option is set tofalse
.
Examples
The following example returns a directory handle with the specified name, if the directory does not exist it is created.
const dirName = "directoryToGetName";
// assuming we have a directory handle: 'currentDirHandle'
const subDir = currentDirHandle.getDirectoryHandle(dirName, { create: true });
Specifications
Specification |
---|
File System Standard # api-filesystemdirectoryhandle-getdirectoryhandle |
Browser compatibility
BCD tables only load in the browser