dialog.ts
export class DialogComponent {
constructor(private service: RestService, private dialogRef: MatDialogRef<DialogComponent>) {
}
no() {
this.dialogRef.close();
}
save() {
const url = 'https://gorest.co.in/public-api/users';
const options = {headers: HttpHeaders, params: HttpParams};
const getResp: any = this.service.Get(url, options);
this.dialogRef.close();
///THIS save() FUNCTION HARDCODED, BUT I WANT TO MAKE RESTCALL DYNAMICALLY WHEN ANYONE CLICKS SAVE BUTTON IN DIALOG
}
}
диалоговое окно. html
<mat-dialog-actions>
<button class="mat-raised-button"
(click)="no()">
no
</button>
<button class="mat-raised-button mat-primary"
(click)="save()">
save
</button>
</mat-dialog-actions>
component1.ts
getUsers() {
const dialogConfig = new MatDialogConfig();
const dialogRef = this.dialog.open(DialogComponent,
dialogConfig, passSomeRestCall-1-FunctionSomehow());
}
component2.ts
getEmployees() {
const dialogConfig = new MatDialogConfig();
const dialogRef = this.dialog.open(DialogComponent,
dialogConfig, passSomeRestCall-2-FunctionSomehow());
}
Над двумя компонентами приходится использовать Dialog Component динамически, в настоящее время выше save () жестко закодировано с некоторым перезвоном, но на самом деле вызов покоя необходим при нажатии на save () для обоих вышеуказанных компонентов. Итак, вкратце, кнопка save () должна происходить динамически c restcall на основе компонента.
Может кто-нибудь, пожалуйста, помогите мне выше, я очень плохо знаком с angular.
РЕДАКТИРОВАТЬ:
for (let i = 0; i < this.items.length; i++) {
this.service.makeRestCall(this.items[i]);
}
Как пройти выше для l oop logi c в диалоговом компоненте? Я должен иметь возможность делать некоторые бизнес-логики c динамически внутри save () на основе компонента, как показано ниже
save(){
dynamicMethod() // this should be passed somehow from a component
this.dialogRef.close();
}