У меня есть такой объект.
steps:any = [
{
id: 1, name: "A", next: [{ id: 2, name: "B" }, { id: 3, name: "C" }]
},
{
id: 2, name: "B", next: [{ id: 1, name: "B" }]
},
{
id: 3, name: "C", next: [{ id: 1, name: "B" }]
},
{
id: 4, name: "D", next: [{ id: 1, name: "B" }]
}
]
и в HTML
<div *ngFor="let step of steps">
{{step.name}}
<div *ngFor="let nextStep of step.next">
<span (click)="change(step,nextStep)">{{nextStep.name}}</span>
</div>
</div>
и тс
change(step, nextStep) {
let __step = this.steps.find((_step) => {
return _step.id === step.id;
});
let __nextStep = __step.next.find((_nextStep) => {
return _nextStep.id === nextStep.id;
});
__nextStep = {name:"XYZ",id:"10",next:[]}
}
В соответствии с этим объект, по которому щелкнули, должен изменить свое значение? Что это не работает, name
остается прежним, но если я делаю
__nextStep.name ="XYZ";
это работает, но если назначить объект не работает. Я что-то упустил?