Я хочу создать диалог, в котором есть некоторый API для данных. До реализации диалога API вызывался с помощью идентификатора параметра через routerLink , но, поскольку я выбрал диалоговое окно, для него не существует параметра, поэтому я не могу передать идентификатор в диалоговое окно для APIВызов.
Я попытался передать идентификатор с помощью функции создания диалога, но это также не сработало в соответствии с требованием.
HTML:
<button color="primary" matTooltip="Audit Order" (click)="onCreate(orders.orderId)" style="background-color:rgba(251, 230, 221, 1); border-radius: 5px;">
AUDIT
</button>
TS:
import { MatDialog, MatDialogConfig } from '@angular/material';
import { AuditPopupComponent } from '../audit-popup/audit-popup.component';
@Component({
selector: 'kt-audit',
templateUrl: './audit.component.html',
styleUrls: ['./audit.component.scss']
})
export class AuditComponent implements OnInit {
constructor(private dailog: MatDialog) {}
ngOnInit() {}
onCreate(orderId){
this.route.params.subscribe(params => {
this._Order.viewOrders(orderId).subscribe(res => {
this.orderDetails = res.data;
});
});
const dailogConfig = new MatDialogConfig();
// dailogConfig.disableClose = true;
dailogConfig.autoFocus = true;
dailogConfig.width = "50%";
this.dailog.open(AuditPopupComponent, dailogConfig);
}
}
Дочерний компонент TS:
ngOnInit() {
this.route.params.subscribe(params => {
this.ps.viewOrders(params['id']).subscribe(res => {
this.ordersView = res.data;
});
});
}