FileSystemObserver: FileSystemObserver() constructor
Experimental: This is an experimental technology
Check the Browser compatibility table carefully before using this in production.
Non-standard: This feature is not standardized. We do not recommend using non-standard features in production, as they have limited browser support, and may change or be removed. However, they can be a suitable alternative in specific cases where no standard option exists.
The FileSystemObserver() constructor creates a new FileSystemObserver object instance.
Syntax
new FileSystemObserver(callback)
Parameters
callback-
A user-defined callback function that will be called when the observer has observed a change in the file system entry it has been asked to observe (via
FileSystemObserver.observe()). The callback function will be passed the following two parameters:records-
An array of
FileSystemChangeRecordobjects that contain details of all the observed changes. observer-
A reference to the current
FileSystemObserverobject, which is made available in case, for example, you want to stop observations after the current records have been received using theFileSystemObserver.disconnect()method.
Return value
A new FileSystemObserver object.
Examples
Note: For a complete working example, check out File System Observer Demo (source code).
Initializing a FileSystemObserver
Before you can start observing file or directory changes, you need to initialize a FileSystemObserver to handle the observations:
const observer = new FileSystemObserver(callback);
The callback function body can be specified to return and process file change observations in any way you want:
const callback = (records, observer) => {
for (const record of records) {
console.log("Change detected:", record);
const reportContent = `Change observed to ${record.changedHandle.kind} ${record.changedHandle.name}. Type: ${record.type}.`;
sendReport(reportContent); // Some kind of user-defined reporting function
}
observer.disconnect();
};
Specifications
Not currently part of a specification. See https://github.com/whatwg/fs/pull/165 for the relevant specification PR.
Browser compatibility
Loading...
See also
- File System API
- The File System Observer API origin trial on developer.chrome.com (2024)