当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Node.js new stream.Readable([options])用法及代码示例


new stream.Readable([options])

历史
版本变化
v15.5.0

支持传入 AbortSignal。

v14.0.0

autoDestroy 选项默认更改为 true

v11.2.0、v10.16.0

添加 autoDestroy 选项以在流发出 'end' 或错误时自动 destroy() 流。


参数
const { Readable } = require('node:stream');

class MyReadable extends Readable {
  constructor(options) {
    // Calls the stream.Readable(options) constructor.
    super(options);
    // ...
  }
}

或者,当使用 pre-ES6 风格的构造函数时:

const { Readable } = require('node:stream');
const util = require('node:util');

function MyReadable(options) {
  if (!(this instanceof MyReadable))
    return new MyReadable(options);
  Readable.call(this, options);
}
util.inherits(MyReadable, Readable);

或者,使用简化的构造方法:

const { Readable } = require('node:stream');

const myReadable = new Readable({
  read(size) {
    // ...
  }
});

在对应于传递的 AbortSignalAbortController 上调用 abort 的行为方式与在创建的可读文件上调用 .destroy(new AbortError()) 的方式相同。

const { Readable } = require('node:stream');
const controller = new AbortController();
const read = new Readable({
  read(size) {
    // ...
  },
  signal: controller.signal
});
// Later, abort the operation closing the stream
controller.abort();

相关用法


注:本文由纯净天空筛选整理自nodejs.org大神的英文原创作品 new stream.Readable([options])。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。