react/packages/react-dom
Andrew Clark 702fc984e6
Codemod act -> await act (4/?) (#26338)
Similar to the rationale for `waitFor` (see #26285), we should always
await the result of an `act` call so that microtasks have a chance to
fire.

This only affects the internal `act` that we use in our repo, for now.
In the public `act` API, we don't yet require this; however, we
effectively will for any update that triggers suspense once `use` lands.
So we likely will start warning in an upcoming minor.
2023-03-08 11:36:05 -05:00
..
npm Add Edge Server Builds for workerd / edge-light (#26116) 2023-02-07 15:10:01 -05:00
src Codemod act -> await act (4/?) (#26338) 2023-03-08 11:36:05 -05:00
README.md Fix import in README 2022-04-07 13:46:36 +01:00
client.js [Codemod] Update copyright header to Meta (#25315) 2022-10-18 11:19:24 -04:00
index.classic.fb.js [Float][Fizz][Fiber] implement preconnect and prefetchDNS float methods (#26237) 2023-02-25 11:04:51 -08:00
index.experimental.js [Float][Fizz][Fiber] implement preconnect and prefetchDNS float methods (#26237) 2023-02-25 11:04:51 -08:00
index.js [Float][Fizz][Fiber] implement preconnect and prefetchDNS float methods (#26237) 2023-02-25 11:04:51 -08:00
index.modern.fb.js [Float][Fizz][Fiber] implement preconnect and prefetchDNS float methods (#26237) 2023-02-25 11:04:51 -08:00
index.stable.js [Float][Fizz][Fiber] implement preconnect and prefetchDNS float methods (#26237) 2023-02-25 11:04:51 -08:00
package.json Add Edge Server Builds for workerd / edge-light (#26116) 2023-02-07 15:10:01 -05:00
server-rendering-stub.js Add preconnect and prefetchDNS to rendering-stub (#26265) 2023-02-28 17:27:16 -05:00
server.browser.js [Codemod] Update copyright header to Meta (#25315) 2022-10-18 11:19:24 -04:00
server.bun.js Add Bun streaming server renderer (#25597) 2022-11-17 13:15:56 -08:00
server.edge.js Add Edge Server Builds for workerd / edge-light (#26116) 2023-02-07 15:10:01 -05:00
server.js [Codemod] Update copyright header to Meta (#25315) 2022-10-18 11:19:24 -04:00
server.node.js [Codemod] Update copyright header to Meta (#25315) 2022-10-18 11:19:24 -04:00
static.browser.js [Codemod] Update copyright header to Meta (#25315) 2022-10-18 11:19:24 -04:00
static.edge.js Add Edge Server Builds for workerd / edge-light (#26116) 2023-02-07 15:10:01 -05:00
static.js [Codemod] Update copyright header to Meta (#25315) 2022-10-18 11:19:24 -04:00
static.node.js [Codemod] Update copyright header to Meta (#25315) 2022-10-18 11:19:24 -04:00
test-utils.js [Codemod] Update copyright header to Meta (#25315) 2022-10-18 11:19:24 -04:00
unstable_server-external-runtime.js [ServerRenderer] Move fizz external runtime implementation to react-dom-bindings (#25617) 2022-11-03 11:15:29 -04:00
unstable_testing.classic.fb.js Remove Reconciler fork (2/2) (#25775) 2022-12-01 23:19:13 -05:00
unstable_testing.experimental.js Remove Reconciler fork (2/2) (#25775) 2022-12-01 23:19:13 -05:00
unstable_testing.js Remove Reconciler fork (2/2) (#25775) 2022-12-01 23:19:13 -05:00
unstable_testing.modern.fb.js Remove Reconciler fork (2/2) (#25775) 2022-12-01 23:19:13 -05:00
unstable_testing.stable.js [Codemod] Update copyright header to Meta (#25315) 2022-10-18 11:19:24 -04:00

README.md

react-dom

This package serves as the entry point to the DOM and server renderers for React. It is intended to be paired with the generic React package, which is shipped as react to npm.

Installation

npm install react react-dom

Usage

In the browser

import { createRoot } from 'react-dom/client';

function App() {
  return <div>Hello World</div>;
}

const root = createRoot(document.getElementById('root'));
root.render(<App />);

On the server

import { renderToPipeableStream } from 'react-dom/server';

function App() {
  return <div>Hello World</div>;
}

function handleRequest(res) {
  // ... in your server handler ...
  const stream = renderToPipeableStream(<App />, {
    onShellReady() {
      res.statusCode = 200;
      res.setHeader('Content-type', 'text/html');
      stream.pipe(res);
    },
    // ...
  });
}

API

react-dom

See https://reactjs.org/docs/react-dom.html

react-dom/client

See https://reactjs.org/docs/react-dom-client.html

react-dom/server

See https://reactjs.org/docs/react-dom-server.html