ReadableStreamBYOBReader: cancel() 方法
注意:此功能在Web Workers中可用。
cancel()
方法是 ReadableStreamBYOBReader
接口的方法,它返回一个 Promise
,该 Promise 在流被取消时解析。调用此方法表示消费者对流不再感兴趣。
注意:如果读取器处于活动状态,则 cancel()
方法的行为与关联流 (ReadableStream.cancel()
) 的行为相同。
语法
js
cancel()
cancel(reason)
参数
reason
可选-
取消的原因,可读性强的字符串。底层源可能会也可能不会使用它。
返回值
一个 Promise
,它以 reason
参数中给定的值完成。
异常
TypeError
-
源对象不是
ReadableStreamBYOBReader
,或者流没有所有者。
示例
此示例代码在按下按钮时调用 cancel()
方法,并将字符串“user choice”作为原因传递。取消完成后,promise 将解析。
js
button.addEventListener("click", () => {
reader.cancel("user choice").then(() => console.log(`cancel complete`));
});
请注意,可以在 使用可读字节流 示例代码中看到此代码的运行情况(按下取消流按钮)。
规范
规范 |
---|
Streams 标准 # ref-for-generic-reader-cancel② |
浏览器兼容性
BCD 表格仅在启用了 JavaScript 的浏览器中加载。