LH
handleResize = () => { setWidth(window.innerWidth }
- обробник на window.resize
подію. useEffect
спрацьовує раз, setWidth
спрацьовує на зміну вікна. Виклик setWidth
перезапускає ж хук.Size: a a a
LH
handleResize = () => { setWidth(window.innerWidth }
- обробник на window.resize
подію. useEffect
спрацьовує раз, setWidth
спрацьовує на зміну вікна. Виклик setWidth
перезапускає ж хук.LH
A
useEffect
:)LH
setWidth
перезапускає ж хук.LH
A
useWindowWidth
.LH
EM
LH
A
EM
EM
EM
EM
A
window.resize
, як приклад частого виклику хука і навмисно повертав 1
як постійне значення.useWindowWidth
спрацьовує на зміну ширини/висоти екрану, але повертає одне і те ж значення. Через постійне спрацювання useWindowWidth
, App
ререндериться.<App width={useWindowWidth()}
, не повинен ререндеритись, якщо width
буде те ж саме. От мені саме цю логіку потрібно отримати :)EM
VS
EM