.. コメント ============== フィルタ関数 ============== | [select / categorySelect] widgetsで使用するマスタを動的に変更する | フィルタ関数を設定することができます。 | 利用者の指定に応じて、選択肢を動的に変更する場合に使用します。 | フィルタ関数のためのプロパティ ================================== .. csv-table:: :header: "プロパティ", "内容", "必須", "備考" :widths: 20, 40, 10, 20 "filterFunc", "フィルタ関数", "必須", "" "watchItems", "変更を監視する項目のキー", "", " | カンマ[,]区切りで複数設定 | することができます。 | categorySelectは、popupで | 使用することが前提なので | 指定しても無視されます。" フィルタ関数の例 ~~~~~~~~~~~~~~~~ | 監視する項目名が、[monitorItem]で値が[01]とそれ以外で | 選択肢を変更するためのフィルタ関数の例を示します。 | :: import { FormGroup } from '@angular/forms'; function filterFunc(form: FormGroup) { // 監視する項目 const monitorItemName = 'monitorItem'; if ( form.controls[monitorItemName].value === '01' ) { return {[ { 'key': 'selectTarget_01', 'value': '01' }, { 'key': 'selectTarget_02', 'value': '02' }, { 'key': 'selectTarget_03', 'value': '03' } ]} } return {[ { 'key': 'selectTarget_04', 'value': '04' }, { 'key': 'selectTarget_05', 'value': '05' } ]} }; 上記filterFunc関数を使用したselectのレイアウト例:: { 'type': 'select', 'master': 'selectMaster', 'key': 'selectItem', 'filterFunc': filterFunc, 'watchItems': 'monitorItem' }