import React, { useEffect, useState } from 'react';
// Функция-инициализатор нужна, чтобы вынести создание объекта состояния из компонента
const initStyle = () => ({ zIndex: 0 });
const Component = () => {
const [style, setStyle] = useState(initStyle);
useEffect(() => {
// Вот здесь можно менять значения - zIndex поменяется через секунду
const timer = setTimeout(() => setStyle({ zIndex: 1 }), 1000);
// Надо не забыть почистить счетчик setTimeout
return () => clearTimeout(timer);
}, []);
return <header className={`${styles.header} navbar navbar-expand-lg navbar-light sticky-top`} style={style} />
};
Можно сделать несколько иначе
import React, { useEffect, useMemo, useState } from 'react';
const Component = () => {
const [zIndex, setZIndex] = useState(0);
// Поскольку style это объект, то неплохо бы его мемоизировать
const style = useMemo(() => ({ zIndex }), [zIndex]);
useEffect(() => {
const timer = setTimeout(() => setZIndex(1), 1000);
return () => clearTimeout(timer);
}, []);
return <header className={`${styles.header} navbar navbar-expand-lg navbar-light sticky-top`} style={style} />
};