Angular 如何清除对话框内的窗体材质角度2

Angular 如何清除对话框内的窗体材质角度2,angular,angular-material,Angular,Angular Material,我在angular 2材质上创建了一个对话框。我将按如下方式打开模式: 我的组件 .... private refDialog; @ViewChild('display') display; openDialog() { this.refDialog= this.dialog.open(this.display); } .... 我的html <ng-template #display> <form (ngSubmit)="onSubmit(f)" #f="

我在angular 2材质上创建了一个对话框。我将按如下方式打开模式:

我的组件

....
private refDialog;
@ViewChild('display') display;

openDialog() {
    this.refDialog= this.dialog.open(this.display);
}
....
我的html

<ng-template #display>
    <form (ngSubmit)="onSubmit(f)" #f="ngForm">
        <div class='col-md-12'>
            <md-input-container>
                <input mdInput placeholder="Name" name="name" [(ngModel)]="product.name" #name="ngModel">
            </md-input-container>
        </div>

        .....

    </form>
</ng-template>

有人能帮我吗?

看看我创建的Plunker演示:

以下是对话框组件:

export class DialogComponent implements OnInit{
  @ViewChild('myform') myform;
  constructor(public dialogRef: MdDialogRef<DialogComponent>){}
  ngOnInit() {
  this.myform.resetForm();
  }
}
openDialog(){
  this.dialog.open(DialogComponent);
}
正如您在GIF中所看到的,每次清除HTML中的硬编码输入值时,表单都会被清除,并且表单处于脏状态,因此它会使用
resetForm()
方法得到完全休息

谢谢你的回答。此.f.restForm()无效。我检查了openDialog()中是否没有该表单的实例。这可能就是他无法重置的原因。我不知道如何获取“角度材质”对话框中的窗体实例。这似乎是一个范围问题。我刚刚创建了一个plunker来复制该问题,我将尝试解决该问题,并通过更新此答案返回给您。@DaniloSantos现在检查我更新的答案!如果这对您有帮助,请确保选择它作为答案:)
openDialog(){
  this.dialog.open(DialogComponent);
}