WritableStreamDefaultController: error() method

Baseline 2022

Newly available

Since June 2022, this feature works across the latest devices and browser versions. This feature might not work in older devices or browsers.

Note: This feature is available in Web Workers.

The error() method of the WritableStreamDefaultController interface causes any future interactions with the associated stream to error.

This method is rarely used, since usually it suffices to return a rejected promise from one of the underlying sink's methods. However, it can be useful for suddenly shutting down a stream in response to an event outside the normal lifecycle of interactions with the underlying sink.

Syntax

js
error(message)

Parameters

message

A string representing the error you want future interactions to fail with.

Return value

None (undefined).

Exceptions

TypeError

The stream you are trying to error is not a WritableStream.

Examples

js
const writableStream = new WritableStream({
  start(controller) {
    // do stuff with controller

    // error stream if necessary
    controller.error("My error is broken");
  },
  write(chunk, controller) {
    // ...
  },
  close(controller) {
    // ...
  },
  abort(err) {
    // ...
  },
});

Specifications

Specification
Streams Standard
# ref-for-ws-default-controller-error①

Browser compatibility

BCD tables only load in the browser