Насколько я знаю, Angular не распознает, изменился ли объект.Он может только слушать изменения переменных и (возможно) свойств объектов.
Возможно, вы могли бы прослушивать другую переменную, вызывая событие, когда оно изменяется при изменении данных
Это обходной путь:
this.ObjectName = Object.assign({}, this.ObjectName);
Таким образом, Angular обнаруживает изменение и запускает ngOnChanges
.Вам придется переназначить свой объект в родительском компоненте.