ScreenshotSize {
public constructor(
public id: number,
public size: string,
public isActive: boolean
) {}
}
state:
const [sizeScreenshot, setSizeScreenshot] = useState<ScreenshotSize[]>([
new ScreenshotSize(0, "5`5", false),
new ScreenshotSize(1, "6`5", true),
]);
logic:
let newState = [...sizeScreenshot];
newState.forEach((item, i) =>
item.id === index ? item.isActive === true : !item.isActive
);
setSizeScreenshot([...newState]);
Может быть из-за того, что я меняю только свойство объекта?
но я полностью копирую массив состояния, потом меняю свойство, а потом передаю новый массив в стейт
ты массив не трогаешь вообще
я перебираю массив newState и меняю свойство его элементов разве так нельзя?
ты его просто перебираешь и да, его можно просто перебирать
Воуу это что за смесь классов и функции?
class для типизации и только
Обсуждают сегодня