WritableStreamDefaultController: error() 方法

Baseline 已广泛支持

此功能已成熟,并可在许多设备和浏览器版本上使用。自 2022 年 5 月以来,它已在各个浏览器中可用。

注意:此功能在 Web Workers 中可用。

WritableStreamDefaultController 接口的 error() 方法会导致与关联流的任何未来交互都出错。

此方法很少使用,因为通常情况下,从底层 sink 的方法之一返回一个被拒绝的 promise 就足够了。然而,对于响应底层 sink 正常交互生命周期之外的事件而突然关闭流,它可能很有用。

语法

js
error(message)

参数

message

一个字符串,表示你希望未来交互失败时显示的错误。

返回值

无(undefined)。

异常

TypeError

你试图出错的流不是 WritableStream

示例

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) {
    // …
  },
});

规范

规范
Streams
# ref-for-ws-default-controller-error①

浏览器兼容性