TransformStream اکنون با مرورگر متقابل پشتیبانی می شود

اکنون که جریان‌های تبدیل در کروم، سافاری و فایرفاکس پشتیبانی می‌شوند، در نهایت برای بهترین زمان آماده هستند!

پشتیبانی مرورگر

  • کروم: 67.
  • لبه: 79.
  • فایرفاکس: 102.
  • سافاری: 14.1.

منبع

Streams API به شما امکان می دهد منبعی را که می خواهید دریافت کنید، ارسال کنید، یا به تکه های کوچک تبدیل کنید، تجزیه کنید و سپس این تکه ها را ذره ذره پردازش کنید. اخیراً فایرفاکس 102 شروع به پشتیبانی TransformStream کرده است ، به این معنی که TransformStream اکنون در مرورگرها قابل استفاده است. جریان‌های تبدیل به شما اجازه می‌دهند که از ReadableStream به WritableStream ، انتقالی را روی تکه‌ها انجام دهید، یا نتیجه تبدیل شده را مستقیماً مصرف کنید، همانطور که در مثال زیر نشان داده شده است.

class UpperCaseTransformStream {
  constructor() {
    return new TransformStream({
      transform(chunk, controller) {
        controller.enqueue(chunk.toUpperCase());
      },
    });
  }
}

button.addEventListener('click', async () => {
  const response = await fetch('/script.js');
  const readableStream = response.body
    .pipeThrough(new TextDecoderStream())
    .pipeThrough(new UpperCaseTransformStream());

  const reader = readableStream.getReader();
  pre.textContent = '';
  while (true) {
      const { done, value } = await reader.read();
      if (done) {
        break;
      }
      pre.textContent += value;
  }
});

نسخه ی نمایشی