Привет, может кто-нибудь объяснить мне, как заставить эту работу работать должным образом, потому что я не очень опытен в использовании директив viewChild ...
Вот в чем дело, я работаю над небольшим приложением crud в angular, и у меня есть заполненная таблица с моими данными, в каждой строке у меня есть кнопка удаления, которая открывает небольшое окно подтверждения, которое мне удалось получить модально (ngx- bootstrap 3), чтобы открываться по щелчку, теперь мне нужно выяснить, как вызывать функцию из моего родительского компонента, мои HTTP-запросы работают с кнопкой на моей таблице, но не тогда, когда я пытаюсь изменить ее, чтобы открыть модальное окно и сделать запрос на удаление нажав на кнопку подтверждения ...
Вот код в моей родительской маленькой таблице app.component.html ...
<table style="width:100%" class="table table-striped"
id="billing_history_table">
<thead class="head">
<tr>
<th>Name</th>
<th></th>
</tr>
</thead>
<tbody>
<tr *ngFor="let e of employeelist>
<td>{{e.firstName}}</td>
<td><a (click)="childModal.show()"><span class="glyphicon
glyphicon-trash"></span></a></td>
</tr>
</tbody>
</table>
<app-modal-component #childModal>
</app-modal-component>
В моем app.component.ts, который является моим родительским компонентом
@ViewChild('childModal') childModal: ModalComponent;
Это функция, которую я хочу вызвать в моем открытом модальном окне из родительской композиции.
DeleteEmployee(id: string) {
this._usermanagementservice.deleteEmployee(id).subscribe(res => {
this.LoadAllEmployees();
})
}
Идентификатор взят из моей БД, не показан в таблице, я не знаю, как передать его в модальный
В дочернем компоненте у меня есть
@ViewChild('childModal') public childModal: ModalDirective;
show() {
this.childModal.show();
}
hide() {
this.childModal.hide();
}
И в дочернем компоненте .html
<div bsModal #childModal="bs-modal" class="modal fade" tabindex="-1"
role="dialog" [config]="{backdrop: 'static'}" aria-hidden="true">
<div class="modal-dialog modal-sm">
<div class="modal-content">
<div class="modal-body text-center">
<p>Do you want to confirm?</p>
<button type="button" class="btn btn-default"
(click)="confirm()">Yes</button>
<button type="button" class="btn btn-primary"
(click)="hide()">No</button>
</div>
</div>
</div>
</div>
Надеюсь, вы понимаете мой вопрос, кнопка подтверждения в дочернем .html должна запускать функцию DeleteEmployee и с помощью идентификатора из моей таблицы делать запрос на удаление ... Я знаю, что он должен что-то делать с эмиттерами вывода и событий, но я понятия не имею, Благодарность :(