无法将数据传递到材质对话框-Angular2 +

时间:2018-08-12 20:50:22

标签: javascript angular typescript angular-material

我无法启动“材料对话框”。有什么我想念的吗?

product-thumbnail.ts 我将点击此按钮以打开对话框

export class ProductThumbnailComponent implements OnInit {

  @Input() product: Product;

  constructor(public dialog: MatDialog) { }

  ngOnInit() {
  }

  openPopup(prod) {
    this.dialog.open(ProductPageComponent, {
      autoFocus: true,
      width: '400px',
      data: {product: prod}
    });

  }

}

product-page.ts 这是对话框组件

export class ProductPageComponent implements OnInit {

  @Input() product: Product;

  constructor(
    private cartService: CartService,
    public dialogRef: MatDialogRef<ProductPageComponent>,
    @Inject(MAT_DIALOG_DATA) private data
  ) { }

  ngOnInit() {
  }

  onAddToCart() {
    this.cartService.addToCart(this.product);
  }

}

Stackblitz

enter image description here

1 个答案:

答案 0 :(得分:1)

在您提供的堆叠闪电战中,您缺少动画依赖项

我根据您提交的内容进行了分叉,并更新了依赖性,并将ProductPage组件添加到您的应用模块的Entry组件中。

https://shopping-app-lypbxe.stackblitz.io

data["A"]