このドキュメントはAIによって翻訳されました。正確な情報については英語版をご参照ください。
モデルの uid に基づいて、現在のエンジンまたはビュー履歴(View Stack)内のモデルインスタンス(BlockModel、PageModel、ActionModel など)を取得します。これは RunJS において、ブロック、ページ、またはポップアップを跨いで他のモデルにアクセスするために使用されます。
現在の実行コンテキストが存在するモデルやブロックのみが必要な場合は、ctx.getModel を使用するのではなく、ctx.model または ctx.blockModel を優先的に使用してください。
| シーン | 説明 |
|---|---|
| JSBlock / JSAction | 既知の uid に基づいて他のブロックのモデルを取得し、その resource、form、setProps などを読み書きします。 |
| ポップアップ内の RunJS | ポップアップ内からそれを開いたページ上のモデルにアクセスする必要がある場合、searchInPreviousEngines: true を渡します。 |
| カスタム操作 | ビュー履歴を跨いで uid により設定パネル内のフォームや子モデルを特定し、その設定や状態を読み取ります。 |
| パラメータ | 型 | 説明 |
|---|---|---|
uid | string | ターゲットモデルインスタンスの一意識別子。設定時または作成時に指定されます(例:ctx.model.uid)。 |
searchInPreviousEngines | boolean | オプション、デフォルトは false。true の場合、「ビュー履歴」において現在のエンジンからルートに向かって検索し、上位エンジン(ポップアップを開いた元のページなど)のモデルを取得できます。 |
FlowModel のサブクラスインスタンス(BlockModel、FormBlockModel、ActionModel など)を返します。undefined を返します。searchInPreviousEngines: false): 現在のエンジン内のみで uid を検索します。ポップアップや多階層のビューでは、各ビューが独立したエンジンを持つため、デフォルトでは現在のビュー内のモデルのみを検索します。searchInPreviousEngines: true: 現在のエンジンから開始し、previousEngine チェーンを遡って検索し、最初に見つかったものを返します。ポップアップ内からそれを開いたページのモデルにアクセスする場合に適しています。getModel を使わずにアクセス可能です。