React · Middle · Запитання 17 з 75
Як поводяться події всередині порталу createPortal(child, document.body)?
- ✓Правильна відповідь: Спливають деревом React, до React-батька, а не DOM-ом
- 2Не спливають узагалі - портал їх блокує
- 3Спливають лише DOM-деревом до
document.body
Пояснення
Портал рендерить DOM в інше місце (модалки, тултипи, щоб уникнути overflow: hidden і контекстів накладання), але логічно лишається частиною дерева React: контекст доступний, а події спливають до React-предків. Іноді це несподівано, наприклад onClick батька спрацьовує від кліку в модалці.