小编Pau*_*ula的帖子

角度材质对话框 - 将类型传递到对话框组件中

我正在开发数据驱动的应用程序,目前我面临将类型传递到材质角度对话框的问题。我想创建可重用的对话框表单,并且需要更改新对话框实例的类型。

有没有办法将类型传递到材质对话框或组件中?或者也许有可能从作为数据传递的字符串在对话框本身中创建类型?

我想在这样的(或类似的)对话框组件中使用类型:

export class DialogDynamicItemManagerDialog<T> {

    public dialogName: string;
    public items: Array<T>;
    public selectedItem: T;
    ...
}
Run Code Online (Sandbox Code Playgroud)

我试图传递这样的类型:

 OpenDynamicDialog(): void {
    this.dialog.open(DialogDynamicItemManagerDialog<MyType>, {
      data: {
        title: 'Manage items',
        items: this.items
      },
    });
}
Run Code Online (Sandbox Code Playgroud)

但显然它不起作用。

我也试过这个:

 OpenDynamicDialog(): void {
    const dialogRef = this.dialog.open(DialogDynamicItemManagerDialog, {
      data: {
        title: 'Manage items',
        items: this.items,
        itemType: itemType
      },
    });
}
Run Code Online (Sandbox Code Playgroud)

但后来我还没有找到一种方法将字符串更改为对话框中的类型。

typescript angular-material angular angular7

6
推荐指数
2
解决办法
3825
查看次数

标签 统计

angular ×1

angular-material ×1

angular7 ×1

typescript ×1