Когда вы помещаете элемент в массив, ссылка на массив не изменяется, и angular не знает, что он был изменен, одно решение - каждый раз создавать новый массив с одинаковыми элементами this.array = [...this.array]
, что не так сложно см. ниже код, который решает вашу проблему
push() {
this.selected.push('C');
this.selected = [...this.selected];
this.test.push({ name: 'hgf' })
this.test = [...this.test];
}
splice() {
this.selected.splice(0, 1);
this.selected = [...this.selected];
this.test.splice(0, 1);
this.test = [...this.test];
}
Обновлено stackblitz