You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					61 lines
				
				1.1 KiB
			
		
		
			
		
	
	
					61 lines
				
				1.1 KiB
			| 
								 
											3 years ago
										 
									 | 
							
								# `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
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								```sh
							 | 
						||
| 
								 | 
							
								npm install react react-dom
							 | 
						||
| 
								 | 
							
								```
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								## Usage
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								### In the browser
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								```js
							 | 
						||
| 
								 | 
							
								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
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								```js
							 | 
						||
| 
								 | 
							
								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
							 |