We want to hear from you!Take our 2021 Community Survey!
This site is no longer updated.Go to react.dev

Virtual DOM and Internals

Що таке віртуальний DOM?

Віртуальний DOM (VDOM) - це концепція програмування, в якій ідеальне чи «віртуальне» представлення інтерфейсу користувача зберігається в пам’яті і синхронізується зі «справжнім» DOM за допомогою бібліотеки, такої як ReactDOM. Цей процес називається узгодженням.

Власне такий підхід і робить API React декларативним: ви вказуєте React, у якому стані повинен знаходитись інтерфейс користувача, а React, у свою чергу, вже домагається того, щоб DOM відповідав цьому стану. Це абстрагує маніпуляції з атрибутами, обробку подій та оновлення DOM вручну, які, в іншому випадку, довелося б використовувати при розробці додатків.

Оскільки «віртуальний DOM» - це швидше патерн, ніж конкретна технологія, цим терміном іноді позначають різні поняття. У світі React термін «віртуальний DOM» зазвичай асоціюється з React елементами, оскільки вони є об’єктами, що представляють інтерфейс користувача. Однак, React також використовує внутрішні об’єкти, так звані «волокна» (fibers) для зберігання додаткової інформації про дерево компонентів. Вони також можуть вважатися частиною реалізації «віртуального DOM» в React.

Чи схожий тіньовий DOM на віртуальний DOM?

Ні, вони є зовсім різними. Тіньовий DOM (Shadow DOM) - це браузерна технологія, призначена, головним чином, для визначення області видимості змінних та CSS у веб-компонентах. Віртуальний DOM - це концепція, реалізована бібліотеками в JavaScript поверх API браузера.

Що таке «React Fiber»?

Fiber - це новий механізм узгодження в React 16, його основна мета полягає в тому, щоб зробити рендеринг віртуального DOM поступовим. Довідатись більше про це.