Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angular/29.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Angular 将参数传递到弹出对话框_Angular_Jhipster - Fatal编程技术网

Angular 将参数传递到弹出对话框

Angular 将参数传递到弹出对话框,angular,jhipster,Angular,Jhipster,我将id从一个组件传递到另一个组件,并面临此错误 无法读取null的属性“id” -->父路由(/order.component) 我有一个按钮叫支付和导航使用下面的代码 -->其他路由(/order payment.component)->不确定如何将其注册为子路由。我使用routerLink导航到订单付款页面,如上所示 一次,我到达付款页面。我想通过点击Pay按钮将订单id传递给模式对话框进行一些处理 再次使用routerLink [routerLink]="['/', 'order',

我将id从一个组件传递到另一个组件,并面临此错误

无法读取null的属性“id”

-->父路由(/order.component)

  • 我有一个按钮叫支付和导航使用下面的代码
-->其他路由(/order payment.component)->不确定如何将其注册为子路由。我使用routerLink导航到订单付款页面,如上所示

一次,我到达付款页面。我想通过点击Pay按钮将订单id传递给模式对话框进行一些处理

再次使用routerLink

[routerLink]="['/', 'order', { outlets: { popup: order.id + '/payment'} }]"
单击“付款”按钮后,这将显示在我的url中:

订单/(付款//弹出窗口:3/processPayment)

route.ts

export const OrderRoute: Routes = [
{
    path: '',
    component: OrderComponent,
    resolve: {
        pagingParams: JhiResolvePagingParams
    },
    data: {
        authorities: ['ROLE_USER'],
        defaultSort: 'id,asc',
        pageTitle: ''
    },
    canActivate: [UserRouteAccessService]
},
{
    path: ':id/view',
    component: OrderDetailComponent,
    resolve: {
        order: OrderResolve
    },
    data: {
        authorities: ['ROLE_USER'],
        pageTitle: ''
    },
    canActivate: [UserRouteAccessService]
},

{
    path: ':id/processPayment',
    component: PaymentPopupComponent,
    data: {
        authorities: ['ROLE_USER'],
        pageTitle: ''
    },
    canActivate: [UserRouteAccessService],
    outlet: 'popup'
}
订购页

  • 按钮([routerLink]=“['/order/payment'];)
付款页

  • 按钮([routerLink]=“['/','order',{outlets:{popup:order.id+'/payment'}}]”)

您可以使用激活的路由访问PaymentPopupComponent中的:id参数

constructor(private route: ActivatedRoute) {}
id = this.route.snapshot.url[0].path;
// or
this.route.params.subscribe((param) => {
    this.id = param.id; 
})
或者类似的东西

constructor(private route: ActivatedRoute) {}
id = this.route.snapshot.url[0].path;
// or
this.route.params.subscribe((param) => {
    this.id = param.id; 
})