ng抽屉服务组件被调用两次

问题描述 投票:0回答:1
ViewPurchaseOrder(item: any): void {
   this.drawerService.create({
      nzTitle: 'View Purchase Order',
      nzMaskClosable: true,
      nzWrapClassName: "full-drawer noSidebar",
      nzContent: NewPurchaseComponent,
      nzContentParams: { purchaseOrderData: item }
   });
 }

 ViewCreateOrder(item: any): void {

    this.drawerService.create({
      nzTitle: 'View Create Order',
      nzMaskClosable: true,
      nzWrapClassName: "md-drawer",
      nzContent: ViewProductCartComponent,
      nzContentParams: { createOrderData: item }
    });
  }

这里我有两种不同的抽屉服务方法。

当我调用 ViewPurchaseOrder 时,它完全没问题,但是当我调用 ViewCreateOrder 然后关闭抽屉时,如果我再次调用 ViewPurchaseOrder

我不知道为什么它叫

ViewProductCartComponent
那个组件?

我找不到这个,有人可以解决这个问题吗?

angular components drawer ng
1个回答
0
投票

尝试存储抽屉引用,然后在前一个抽屉上调用

close
方法。不过只是猜测。

drawerRef: any;
...


...
ViewPurchaseOrder(item: any): void {
   this.drawerRef?.close();
   this.drawerRef = this.drawerService.create({
      nzTitle: 'View Purchase Order',
      nzMaskClosable: true,
      nzWrapClassName: "full-drawer noSidebar",
      nzContent: NewPurchaseComponent,
      nzContentParams: { purchaseOrderData: item }
   });
 }

 ViewCreateOrder(item: any): void {
   this.drawerRef?.close();
   this.drawerRef = this.drawerService.create({
      nzTitle: 'View Create Order',
      nzMaskClosable: true,
      nzWrapClassName: "md-drawer",
      nzContent: ViewProductCartComponent,
      nzContentParams: { createOrderData: item }
    });
  }
最新问题
© www.soinside.com 2019 - 2025. All rights reserved.