ng-alain重置表單cascader不生效

ng-alain 使用SF formReset重置搜索表單時,級聯組件cascader不生效,文字沒被清空?

在使用ng-alain生成的列表模板中,上面是由動態表單組件SF構成。下面是由ST表格組件構成。
下面說說ST表格的上方的搜索表單組件SFjavascript

在使用過程當中,SF動態表單能夠隨意配置已有的小部件,大多小部件都很實用而且經常使用,但有個別小部分存在缺陷問題,如cascader級聯組件。你可能會遇到如下的小問題:html

當表單都存在數據時,進行重置操做,使用SF(formReset)方法,但出來的效果除了級聯組件cascader內容沒清空外,其餘小部件都清空了原有的值。此時再調用SF(formSubmit)方法,發現原來cascader的值是空的,而組件所顯示文字卻沒有被清空。java

此時解決辦法以下:在(formReset)方法中刷新SFschema來實現清空。ui

html文件this

<page-header [action]="phActionTpl" [breadcrumb]="breadcrumb">
</page-header>
<nz-card>
  <sf #sf mode="search" [schema]="searchSchema" [ui]="uiSchema" [button]="sfButton" (formSubmit)="search($event)" (formReset)="reset($event)"></sf>
  <st #st [data]="url" [columns]="columns"></st>
</nz-card>

ts文件url

/**
 * 搜索
 * @param event 搜索表單數據對象
 */
search(event) {
  console.log(event)
  this.st.load(undefined, event)
}
/**
* 搜索重置
 * @param event 搜索表單數據對象
 */
reset(event) {
  this.st.reset(event);
  // 針對級聯組件cascader不能清空的問題,從新refresh一次表單
  this.sf.refreshSchema();
}
相關文章
相關標籤/搜索