@Ghoulll

Как кинуть событие в родительский компонент?

Есть компонент родителя, в котором есть метод и его необходимо вызвать с определенными параметрами, также есть дочерний компонент и в нем определяются ключевые параметры которые нужны в методе родителя.
Код родительского метода:
<app-auth [certs]="cert"
                  [certPassword] = "certPassword"
                  [certAlias] = "certAlias"
                  (sendCert)="sendCertTest(certAlias, certPassword)"
        >
        </app-auth>

sendCertTest(certAlias, certPassword): any {
...
  }


Код дочернего компонента:
<ng-container>
  <mat-expansion-panel *ngFor="let cert of certs.arrCertInfo; let i = index">
  ...
        <mat-form-field>
          <mat-label>Пароль</mat-label>
          <input matInput type="password" [(ngModel)]="certPassword">
        </mat-form-field>
        <button mat-stroked-button (click)="onSendCert(certs.arrAlias[i], certPassword)">Войти</button>
      </div>
...
</ng-container>


@Input() certs: UserKey;
  @Input() certPassword: any;
  @Input() certAlias: any;

  @Output() sendCert: EventEmitter<any> = new EventEmitter();
  onSendCert(certAlias, certPassword): any {
    this.certPassword = certPassword;
    this.certAlias = certAlias;
    this.sendCert.emit();
  }
  • Вопрос задан
  • 77 просмотров
Решения вопроса 1
Xuxicheta
@Xuxicheta Куратор тега Angular
инженер
this.sendCert.emit(); - то что тут между скобочками, а в данный момент тут ничего
попадает вот сюда
(sendCert)="sendCertTest(certAlias, certPassword)"
certAlias, certPassword - будут undefined
Плюс у события всего один параметр.

И вообще непонятно зачем одни и те же данные туда сюда гонять.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы