Как сохранить предыдущее состояние?
Есть массив:
const [data, setData] = useState([
createData('26.01.2021', [
{ type: 'Сканы', name: 'Джиэфси27.12.2020.jpg', id: 0, checked: false },
{ type: 'Накладная', name: 'Джиэфси27.12.2020.jpg', id: 1, checked: false },
{ type: 'Уставные документы', name: 'Джиэфси27.12.2020.jpg', id: 2, checked: false },
{ type: 'Накладная', name: 'Джиэфси27.12.2020.jpg', id: 3, checked: false },
]),
createData('25.01.2021', [
{ type: 'Расходы', name: 'Джиэфси27.12.2020.jpg', id: 0, checked: false },
{ type: 'Накладная', name: 'Джиэфси27.12.2020.jpg', id: 1, checked: false },
{ type: 'Накладная', name: 'Джиэфси27.12.2020.jpg', id: 2, checked: false },
{ type: 'Накладная', name: 'Джиэфси27.12.2020.jpg', id: 3, checked: false },
]),
]);
createData() возвращает подобный массив: [{date: "date", files: [{type, name ... тд}]}];
По нажатию на одну из кнопок фильтрации вызывается вот эта функция фильтрации:
const filtration = (filterSetting) => {
setData((prev) => {
if (prevData.length <= 0) {
prevData = prev;
}
return prev.map(e => {
return ({
...e,
files:e.files.filter(fl => fl.type === filterSetting)
});
});
});
};