Angular несколько дочерних компонентов в модальном режиме создают проблему отправки и вызова - PullRequest
0 голосов
/ 30 мая 2020

У меня есть два дочерних компонента в моем родительском компоненте, которые открываются в модальном режиме с помощью ngbmodalservice, каждый компонент имеет другое #name, но я сталкиваюсь с использованием при отправке форм для каждого дочернего компонента.

Я могу примерно создает здесь ситуацию для понимания:

parent-app:

<parent-app>
  <ng-template>
   <child-component-one>
   </child-component-one>
 </ng-template>
<ng-template>
   <child-component-two>
   </child-component-two>
 </ng-template>
</parent-app>

child-one:

<child-component-app>
  <form (ngSubmit)="submitform()">
   <some-fields><some-fields>
   <button type="submit"></button>
  </form>
</child-component-app>

submitform(){
//httpcall for service
}

child-two:

<child-component2-app>
  <form (ngSubmit)="submitform2()">
   <some-fields><some-fields>
   <button type="submit"></button>
  </form>
</child-component2-app>

submitform2(){
//httpcall for service
}

теперь, когда я вызываю первый компонент, открывается один модальный режим, и я выполнил задачу и отправил его, методы формы работают нормально, теперь я снова открываю вторую модальную работу и отправляю, затем перед вызовом submitform2 он вызывает submitform, а затем он вызывает свой метод c, и это произошло наоборот, но если я сделаю что-то еще, например, открытие модального (то есть компонент один), затем отправлю и go на какую-то другую страницу и вернусь и открою второй компонент, тогда он работает нормально.

Теперь я попытался отменить подписку на свой httpcall в ngDestroy, также попробовал ngOinit () при закрытии th e модальный, также пытался вызвать метод, использующий страницу, который передает имя страницы в качестве параметра, но, похоже, ничего не работает. Может ли кто-нибудь помочь мне с этой проблемой или просто предложить мне причину этого.

...