Я пытаюсь создать липкий заголовок в React, используя хук useEffect. Я думаю, что проблема связана с моим оператором IF logi c, но он просто пролетает над моей головой.
Кажется, что моя навигационная панель отлично держится при прокрутке, но при прокрутке вверх до вершины она не ' т "отклеить". Журнал консоли «застрял» показывает, что он, похоже, не изменяется от ложного ...
const [ stuck, setStuck ] = useState(false);
useEffect(() => {
window.addEventListener('scroll', (e) => {
console.log(stuck);
if (stuck === false) {
if (window.pageYOffset > 131) {
setStuck(true);
console.log('stuck');
}
} else {
if (window.pageYOffset < 131) {
setStuck(false);
console.log('unStuck');
}
}
});
}, []);
, возвращая навигационную панель, которая выглядит примерно так ...
<div
className={classes.Links}
style={
stuck ? (
{ position: 'fixed', top: '0', width: '100%', left: '0' }
) : (
{ left: toggle ? '0' : '-100%' }
)
}>
<ul></ul>
</div>
Любая помощь будет признателен, спасибо!