Я использую Angular 5 и ngrx с rxjs 5.5.
У меня есть свойство в состоянии выборки, которое является объектом со свойством filters.
В одном случае я пытаюсь сделать копию текущего выделения в новой переменной 'filters' и изменить свойство'thing '.
Когда я запускаю код, я вижу, что срез выбора состояния изменяется на значение, установленное в эффекте, даже если я не изменяю этот срез напрямую, и я использую оператор распространения.
Я также пытался использовать цикл for вместо map, и результат тот же.
// effect.ts
// Initialise filters using the spread operator
const filters = [
...selection.filters // Taken from the store
];
// Filters is a list of objects of type {key: {something: string}}
filters.map(filter => {
for (const key in filter) {
if (filter.hasOwnProperty(key)) {
filter[key].something = this.auxService.get(filter[key].something);
}
}
// At this point selection.filters in the store has been modified
});