Недавно я обновил свой проект с Typescript 3.5 до 3.8. Все работает без сбоев, ожидается некоторая операция с массивом.
const usedROI = this.rois.find((roi) => roi.id === roiId);
usedROI.position.height = position.height;
ERROR TypeError: Невозможно назначить только для чтения свойство 'height' объекта '[object Object]'
let rerouteWaypoint = route.waypoints.filter((wp) => wp.type === IWaypointType.REROUTE_POINT);
rerouteWaypoint.forEach((wp) => (wp.type = IWaypointType.USER_POINT));
ERROR TypeError: невозможно назначить только для чтения свойство 'type' объекта '[object Array]'
const wps = state.entities[action.payload.routeId].waypoints;
const wp = {
...wps[index],
...action.payload.changes,
};
wps[index] = { ...wp }; <= this line breaks
core. js: 4117 ERROR TypeError : Невозможно назначить только для чтения свойство '0' объекта '[object Array]'
Я нигде в своем приложении не использую только чтение, похоже, весь мой массив заморожен и не редактируется.
Почему так? Я не вижу этого в критических изменениях. Есть ли способ найти в визуальном коде ВСЕ место, где возникает эта проблема? Потому что прямо сейчас появляется только ошибка во время выполнения, и развертывать такую версию действительно небезопасно.
EDIT: Кто-то говорит о подобной проблеме здесь => Ошибка при сортировке массива объектов Невозможно назначить только для чтения свойство '2' объекта '[object Array]'
, но я не понимаю, почему простой массив также выбрасывает его без использования сохраненных элементов redux.