このドキュメントはAIによって翻訳されました。正確な情報については英語版をご参照ください。
フィルター接続マネージャー。フィルターフォーム(FilterForm)とデータブロック(テーブル、リスト、チャートなど)間のフィルターの関連付けを管理するために使用されます。BlockGridModel によって提供され、そのコンテキスト内(フィルターフォームブロック、データブロックなど)でのみ利用可能です。
| シーン | 説明 |
|---|---|
| フィルターフォームブロック | フィルター項目とターゲットブロック間の接続設定を管理し、フィルター変更時にターゲットデータをリフレッシュします。 |
| データブロック(テーブル/リスト) | フィルター対象として機能し、bindToTarget を通じてフィルター条件をバインドします。 |
| 連動ルール / カスタム FilterModel | doFilter や doReset 内で refreshTargetsByFilter を呼び出し、ターゲットのリフレッシュを実行します。 |
| 接続フィールド設定 | getConnectFieldsConfig や saveConnectFieldsConfig を使用して、フィルターとターゲット間のフィールドマッピングを維持します。 |
注意:
ctx.filterManagerはBlockGridModelを持つ RunJS コンテキスト(フィルターフォームを含むページ内など)でのみ利用可能です。通常の JSBlock や独立したページではundefinedになるため、使用前にオプショナルチェイニング(?.)によるチェックを推奨します。
| メソッド | 説明 |
|---|---|
getFilterConfigs() | 現在のすべてのフィルター接続設定を取得します。 |
getConnectFieldsConfig(filterId) | 指定したフィルターの接続フィールド設定を取得します。 |
saveConnectFieldsConfig(filterId, config) | フィルターの接続フィールド設定を保存します。 |
addFilterConfig(config) | フィルター設定(filterId + targetId + filterPaths)を追加します。 |
removeFilterConfig({ filterId?, targetId?, persist? }) | filterId、targetId、またはその両方に基づいてフィルター設定を削除します。 |
bindToTarget(targetId) | フィルター設定をターゲットブロックにバインドし、その resource にフィルターを適用させます。 |
unbindFromTarget(targetId) | ターゲットブロックからフィルターのバインドを解除します。 |
refreshTargetsByFilter(filterId または filterId[]) | フィルターに基づいて、関連するターゲットブロックのデータをリフレッシュします。 |
getFilterValue() を実装する必要があります。resource は addFilterGroup、removeFilterGroup、refresh をサポートしている必要があります。