readableStream.pipeThrough(transform[, options])
添加於:v16.5.0
參數
transform
<Object>readable
<ReadableStream>transform.writable
將向其推送可能修改的數據的ReadableStream
是從此ReadableStream
接收的。writable
<WritableStream>WritableStream
將寫入此ReadableStream
的數據。
options
<Object>preventAbort
<boolean> 當true
時,此ReadableStream
中的錯誤不會導致transform.writable
中止。preventCancel
<boolean> 當true
時,目標transform.writable
中的錯誤不會導致此ReadableStream
被取消。preventClose
<boolean> 當true
時,關閉此ReadableStream
不會導致transform.writable
被關閉。signal
<AbortSignal> 允許使用 <AbortController> 取消數據傳輸。
- 返回: <ReadableStream> 來自
transform.readable
。
將此 <ReadableStream> 連接到 transform
參數中提供的 <ReadableStream> 和 <WritableStream> 對,以便將來自此 <ReadableStream> 的數據寫入 transform.writable
,可能進行轉換,然後推送到 transform.readable
。配置管道後,將返回 transform.readable
。
當管道操作處於活動狀態時,導致 readableStream.locked
為 true
。
import { ReadableStream, TransformStream, } from 'node:stream/web'; const stream = new ReadableStream({ start(controller) { controller.enqueue('a'); }, }); const transform = new TransformStream({ transform(chunk, controller) { controller.enqueue(chunk.toUpperCase()); } }); const transformedStream = stream.pipeThrough(transform); for await (const chunk of transformedStream) console.log(chunk);
const { ReadableStream, TransformStream, } = require('node:stream/web'); const stream = new ReadableStream({ start(controller) { controller.enqueue('a'); }, }); const transform = new TransformStream({ transform(chunk, controller) { controller.enqueue(chunk.toUpperCase()); } }); const transformedStream = stream.pipeThrough(transform); (async () => { for await (const chunk of transformedStream) console.log(chunk); })();
相關用法
- Node.js ReadableStream.getReader([options])用法及代碼示例
- Node.js ReadableStream.values([options])用法及代碼示例
- Node.js ReadableStreamBYOBReader用法及代碼示例
- Node.js Readable Stream data事件用法及代碼示例
- Node.js Readable Stream pause事件用法及代碼示例
- Node.js Readable Stream readable事件用法及代碼示例
- Node.js Readable Stream close事件用法及代碼示例
- Node.js Readable Stream error事件用法及代碼示例
- Node.js Readable Stream end事件用法及代碼示例
- Node.js Readable Stream resume事件用法及代碼示例
- Node.js ReferenceError用法及代碼示例
- Node.js REPLServer.defineCommand(keyword, cmd)用法及代碼示例
- Node.js RangeError用法及代碼示例
- Node.js REPLServer用法及代碼示例
- Node.js ServerHttp2Stream http2stream.pushStream(headers[, options], callback)用法及代碼示例
- Node.js http2.Http2ServerRequest request.url用法及代碼示例
- Node.js request.socket用法及代碼示例
- Node.js assert.notEqual(actual, expected[, message])用法及代碼示例
- Node.js tlsSocket.authorized用法及代碼示例
- Node.js zlib.deflateRaw()用法及代碼示例
- Node.js http.IncomingMessage message.rawHeaders用法及代碼示例
- Node.js Console用法及代碼示例
- Node.js GM transparent()用法及代碼示例
- Node.js URL.protocol用法及代碼示例
- Node.js http.Agent.reuseSocket(socket, request)用法及代碼示例
注:本文由純淨天空篩選整理自nodejs.org大神的英文原創作品 ReadableStream.pipeThrough(transform[, options])。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。