unmountComponentAtNode
Цей API буде видалено у наступному старшому релізі React.
У React 18 unmountComponentAtNode
було замінено на root.unmount()
.
unmountComponentAtNode
видаляє змонтований React-компонент з DOM.
unmountComponentAtNode(domNode)
Довідник
unmountComponentAtNode(domNode)
Викличте unmountComponentAtNode
, щоб видалити змонтований React-компонент з DOM і очистити його обробники подій та стан.
import { unmountComponentAtNode } from 'react-dom';
const domNode = document.getElementById('root');
render(<App />, domNode);
unmountComponentAtNode(domNode);
Дивіться більше прикладів нижче.
Параметри
domNode
: Елемент DOM. React видалить змонтований React-компонент з цього елемента.
Повернення
unmountComponentAtNode
повертає true
, якщо компонент було демонтовано, і false
в іншому випадку.
Використання
Викличте Іноді вам може знадобитися "додати" React на існуючу сторінку або сторінку, яка не повністю написана на React. У таких випадках вам може знадобитися "зупинити" React-застосунок, видаливши весь інтерфейс, стани та слухачів з DOM-вузла, на якому він був відрендерений. У цьому прикладі натискання кнопки "Відрендерити React-застосунок" відрендерить React-застосунок. Натисніть "Демонтувати застосунок React", щоб знищити його:unmountComponentAtNode
, щоб видалити Видалення React-застосунку з DOM-елемента
<!DOCTYPE html>
<html>
<head><title>My app</title></head>
<body>
<button id='render'>Render React App</button>
<button id='unmount'>Unmount React App</button>
<!-- This is the React App node -->
<div id='root'></div>
</body>
</html>
import './styles.css';
import { render, unmountComponentAtNode } from 'react-dom';
import App from './App.js';
const domNode = document.getElementById('root');
document.getElementById('render').addEventListener('click', () => {
render(<App />, domNode);
});
document.getElementById('unmount').addEventListener('click', () => {
unmountComponentAtNode(domNode);
});
export default function App() {
return <h1>Hello, world!</h1>;
}