Skip to content

Bug: there is no renderToReadableStream function in react-dom@18.2.0 in Node.js #26906

@krutoo

Description

@krutoo

I try to use renderToReadableStream function from react-dom/server in Node.js but there is no such function in package.

React version: 18.2.0
Node.js version 16.15.0 or 18.16.0

Steps To Reproduce

  1. create index.mjs file
  2. insert code:
    import { renderToString, renderToReadableStream } from "react-dom/server";
    
    console.log({ renderToString, renderToReadableStream });
  3. run node index.mjs in terminal

Link to code example:

StackBlitz

The current behavior

Error in terminal:

file:///Users/user/Projects/node-fetch-api-server/index.mjs:1
import { renderToString, renderToReadableStream } from "react-dom/server";
                         ^^^^^^^^^^^^^^^^^^^^^^
SyntaxError: Named export 'renderToReadableStream' not found. The requested module 'react-dom/server' is a CommonJS module, which may not support all module.exports as named exports.
CommonJS modules can always be imported via the default export, for example using:

import pkg from 'react-dom/server';
const { renderToString, renderToReadableStream } = pkg;

    at ModuleJob._instantiate (node:internal/modules/esm/module_job:124:21)
    at async ModuleJob.run (node:internal/modules/esm/module_job:190:5)

Node.js v18.16.0

The expected behavior

Node.js suupports web streams in experimental mode.

The package react-dom/server must have a function renderToReadableStream according to the documentation:
https://react.dev/reference/react-dom/server/renderToReadableStream

Metadata

Metadata

Assignees

No one assigned

    Labels

    Status: UnconfirmedA potential issue that we haven't yet confirmed as a bug

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions