2017-11-22 14 views
0

に独自のカスタムフィルタを設定しようとしています。
Applyボタンの他​​に、フィルター用のボタンも必要です。つまり、何らかのUIでこれを説明できるのであれば、カスタムフィルタ:フィルタ用のカスタムボタンを使用できますか?

| - カスタムフィルタ-------------------。
|フィルタテキスト:_____________ |
| | | Clear All |
| _______________________ |

デフォルトのフィルタコンポーネントag-gridを使用すると、filterParamsColDefに入力すると、2つのボタンが必要になることがわかります。

filterParams: { 
    applyButton: true, 
    clearButton: true 
} 

しかし、他のカスタム(Clear All)ボタンはどうですか?私はそれを達成する方法はありますか?

答えて

0

検索と試行錯誤の数時間後に達成しました。

は、ここに挙げた例を見てください:ag-Grid Angular Custom Filter ComponentPartialMatchFilterComponentを見て、そのコードを持っています。

テンプレートとコンポーネントのコードをいくつか更新したら、それを達成できます。

更新テンプレート:コンポーネントのコードで

<button (click)="apply()">Apply</button> 
<button (click)="clear()">Clear</button> 
<!-- any other buttons you want to keep --> 

リトル更新:ちょうどApplyボタンクリックでthis.params.filterChangedCallback()を呼び出す必要があります。

apply(): void { 
    this.params.filterChangedCallback(); 
} 
clear(): void { 
    this.text = ''; 
    this.params.filterChangedCallback(); 
} 
onChange(newValue): void { 
    if (this.text !== newValue) { 
     this.text = newValue; 
     // this.params.filterChangedCallback(); - remove 
    } 
} 
関連する問題