データガイドライン
Lightning データサービス
Apex メソッドのインポート
コンポーネントへの Apex メソッドの公開
コンポーネントへの Apex メソッドの結び付け
命令としての Apex メソッドのコール
Apex アクションの一括処理
クライアント側キャッシュ
オブジェクトと項目のインポート
Apex 継続オブジェクト
@AuraEnabled
継続の例
継続の制限
Apex クラスの保護
Apex からの API のコール
@AuraEnabled アノテーション継続では Apex コードで @AuraEnabled アノテーションを使用します。使い方のルールは次の通りです。
@AuraEnabled(continuation=true)
継続を返す Apex コントローラメソッドには、@AuraEnabled(continuation=true) アノテーションを付加する必要があります。
@AuraEnabled(continuation=true cacheable=true)
継続アクションの結果をキャッシュするには、Apex コールバックメソッドのアノテーションで cacheable=true と設定します。
Note
continuation=true cacheable=true の間は、コンマではなくスペースで区切ってください。
:::
Continuation オブジェクトを返すメソッドを含めて、継続チェーンに関与するすべてのメソッドで cacheable=true と設定するのがベストプラクティスです。
この例では、継続を返す Apex メソッド (startRequest()) とコールバック (processResponse()) の両方の @AuraEnabled アノテーションで cacheable=true が設定されています。
1// Action method
2@AuraEnabled(continuation=true cacheable=true)
3public static Object startRequest() { }
4
5// Callback method
6@AuraEnabled(cacheable=true)
7public static Object processResponse(List<String> labels,
8 Object state) { }@AuraEnabled での cacheable 属性の各設定の動作を下表にまとめます。
cacheable=true のアノテーションが付いた、継続オブジェクトを返すメソッド | cacheable=true のアノテーションが付いたコールバックメソッド | 有効かどうか | @wire を使用してコール可能? | アクションからの応答がクライアントでキャッシュされるかどうか |
|---|---|---|---|---|
| はい | はい | はい | はい | はい |
| はい | いいえ | いいえ (例外をスロー) | なし | なし |
| いいえ | はい | はい | いいえ (すべてのメソッドで cacheable=true にする必要あり) | いいえ |
| いいえ | いいえ | はい | いいえ | いいえ |
関連トピック
The Japanese Summer '24 guide is now live