Сталкиваюсь с ошибкой превышения максимальной глубины обновления, при перезаписи массива объектов.
Я передаю пропс
props.params, который есть не во всех вызовах компонента. Если он есть, то отфильтровать и перезаписать глобальную переменную
bigData. при этом она в
useState .
Пробовал и в самом хуке менять и в useEffect, но оно игнорит условие if. Что делаю не так?
let bigData; // изменяемый массив
if (name === "courses") {
bigData = dataCourse;
}
if (name === "tasks") {
bigData = dataTask;
}
if (name === "meetings") {
bigData = dataMeeting;
}
if (props.params !== undefined) {
const params = props.params.split("_")[1]; // props.params = "courses_0"
const fel = bigData.filter((a) => a.id_course === params); // {id_course: 0}
bigData = fel;
}
const [blocks, setBlocks] = useState(bigData);