保存可能なアクション
大部分のサーバ要求は参照のみで羃等です。つまり、データの変更が発生することなく、必要に応じて何度も要求の繰り返しまたは再試行を行うことができます。羃等なアクションに対する応答はキャッシュできるため、後続の同一アクションですばやく再利用できます。保存可能なアクションで同一アクションを判断する場合、次の組み合わせが重要になります。
- Apex コントローラ名
- メソッド名
- メソッドのパラメータ値
アクションを保存可能としてマーク
API バージョン 44.0 以上のコンポーネントの Apex メソッドから返されるデータをキャッシュするには、Apex メソッドに @AuraEnabled(cacheable=true) アノテーションを付加する必要があります。次に例を示します。
1@AuraEnabled(cacheable=true)
2public static Account getAccount(Id accountId) {
3 // your code here
4}API バージョン 44.0 より前では、Apex メソッドから返されるデータをキャッシュするには、Apex メソッドをコールするアクションごとに JavaScript コードで setStorable() をコールする必要がありました。API バージョン 44.0 以上では、Apex メソッドを保存可能 (キャッシュ可能) としてマークできるようになり、JavaScript コードの setStorable() をコールする必要がなくなりました。Apex クラスのメソッドのキャッシュ表記が一元化されるため、Apex アノテーション手法の方が優れています。
JavaScript コードで次のようにアクションの setStorable()をコールします。
1action.setStorable();setStorable 関数は、省略可能な引数を取ります。この引数は、ストレージオプションを表すキー - 値ペアと設定値の設定対応付けです。次のプロパティのみを設定できます。
- ignoreExisting
- キャッシュをスキップするには、true に設定します。デフォルト値は、false です。
- このプロパティは、キャッシュデータが無効であるとわかっている場合 (レコードの変更後など) に便利です。ほとんどありませんが、明示的にキャッシュが無効になっているためにこのプロパティを使用することが必要な場合があります。
アクション応答のストレージオプションを設定するには、この設定対応付けを setStorable(configObj) に渡します。