diff --git a/packages/react-dom/src/server/ReactDOMFizzServerBrowser.js b/packages/react-dom/src/server/ReactDOMFizzServerBrowser.js index 1ae511ede561d..530139715e847 100644 --- a/packages/react-dom/src/server/ReactDOMFizzServerBrowser.js +++ b/packages/react-dom/src/server/ReactDOMFizzServerBrowser.js @@ -53,15 +53,19 @@ function renderToReadableStream( }); function onShellReady() { - const stream: ReactDOMServerReadableStream = (new ReadableStream({ - type: 'bytes', - pull(controller) { - startFlowing(request, controller); + const stream: ReactDOMServerReadableStream = (new ReadableStream( + { + type: 'bytes', + pull(controller) { + startFlowing(request, controller); + }, + cancel(reason) { + abort(request); + }, }, - cancel(reason) { - abort(request); - }, - }): any); + // $FlowFixMe size() methods are not allowed on byte streams. + {highWaterMark: 0}, + ): any); // TODO: Move to sub-classing ReadableStream. stream.allReady = allReady; resolve(stream); diff --git a/packages/react-server-dom-webpack/src/ReactFlightDOMServerBrowser.js b/packages/react-server-dom-webpack/src/ReactFlightDOMServerBrowser.js index aeee2d24806db..a00eb8c441067 100644 --- a/packages/react-server-dom-webpack/src/ReactFlightDOMServerBrowser.js +++ b/packages/react-server-dom-webpack/src/ReactFlightDOMServerBrowser.js @@ -33,16 +33,20 @@ function renderToReadableStream( options ? options.onError : undefined, context, ); - const stream = new ReadableStream({ - type: 'bytes', - start(controller) { - startWork(request); + const stream = new ReadableStream( + { + type: 'bytes', + start(controller) { + startWork(request); + }, + pull(controller) { + startFlowing(request, controller); + }, + cancel(reason) {}, }, - pull(controller) { - startFlowing(request, controller); - }, - cancel(reason) {}, - }); + // $FlowFixMe size() methods are not allowed on byte streams. + {highWaterMark: 0}, + ); return stream; }