Angular Передача данных между компонентами

Вообщем у меня есть страница на которой 2 компонента, один создаёт категории другой их редактирует, после создания категории я отправляют новую категорию в родительский компонент, где он добавляет эту категорию к общему массиву категорий и посылает этот массив в компонент который позваляет их редактировать, судя по логам все добавляется и работает без ошибок, но массив категорий компонента который их редактирует, не изменяется в реальном времени, только после перезагрузки страницы, что очень странно, нужна ваша помощь, вот код родительского компонента: html:

<div class="col s12 m6">
  <app-add-category (newCategory)="newCategoryAdd($event)"></app-add-category>
</div>
<div class="col s12 m6">
  <app-edit-category (categoryEdit)="onCategoryUpdate($event)" [categories]="categories"></app-edit-category>
</div>

ts:

export class RecordsPageComponent implements OnInit {
  categories: Category[] = [];
  isLoaded = false;

  constructor(private categoryService: CategoryService) { }

  ngOnInit(): void {
    this.categoryService.getCategories().pipe(untilDestroyed(this)).subscribe((categories: Category[]) => {
     this.categories = categories;
     this.isLoaded = true;
    });
  }

  newCategoryAdd(category: Category) {
    this.categories.push(category);
  }

  onCategoryUpdate(category: Category) {
    const idx = this.categories.findIndex(c => c._id === category._id);
    this.categories[idx] = category;
  }
}

А вот код отправки, тут только ts:

export class AddCategoryComponent implements OnInit, OnDestroy {
  form: FormGroup;

  @Output() newCategory = new EventEmitter<Category>();

  constructor(private categoryService: CategoryService) { }

  ngOnInit(): void {
    this.form = new FormGroup({
      title: new FormControl(null, [Validators.required]),
    });
  }

  onSubmit() {
    this.form.disable();
    this.categoryService.addCategory(this.form.value).pipe(untilDestroyed(this)).subscribe((category: Category) => {
      this.newCategory.emit(category);
      MaterialService.toast('Категория создана');
    }, (error) => {
      MaterialService.toast(error.error.message);
      this.form.enable();
   });
  }

  ngOnDestroy(): void {}
  }

Приложил код добавления категорий, ну у редактирования аналогичные вызовы, не одни не работют.


Ответы (0 шт):