Marcar métodos de Apex como con capacidad de caché

Marque un método de Apex como almacenable (con capacidad de caché) en vez de utilizar setStorable() en cada acción JavaScript que llame al método de Apex para centralizar su notación de caché para un método en la clase de Apex.

Dónde: Este cambio se aplica a las organizaciones con componentes Lightning en Lightning Experience, Salesforce Classic y todas las versiones de la aplicación Salesforce.

Por qué: Marcar un método como almacenable mejora el desempeño de su componente mostrando rápidamente los datos en caché desde el almacenamiento del lado del cliente sin tener que esperar un viaje de servidor. Si los datos en caché no tienen actividad, el marco de trabajo recupera los datos más recientes del servidor. La operación de caché es especialmente beneficiosa para los usuarios con una latencia alta o conexiones lentas y poco fiables, como las redes 3G.

Antes de Winter ’19, para poner datos en caché devueltos desde un método de Apex, tenía que llamar a setStorable() en el código JavaScript con cada acción que llamaba al método de Apex. Ahora puede marcar el método de Apex como almacenable (con capacidad de caché) y retirar todas las llamadas setStorable() en el código JavaScript.

Cómo: Este cambio es según la versión. El código de componente existente con una versión 43.0 o anterior de la API continúa funcionando sin cambios.

Para poner en caché datos devueltos desde un método de Apex para cualquier componente con la versión 44.0 o posterior de la API, anote el método de Apex con @AuraEnabled(cacheable=true). Por ejemplo:

@AuraEnabled(cacheable=true)
public static Account getAccount(Id accountId) {
    // your code here
}

Para actualizar un componente existente a una versión 44.0 de la API, elimine las llamadas setStorable() en el código JavaScript. Anote el método de Apex con @AuraEnabled(cacheable=true) en vez de @AuraEnabled o recibirá una respuesta de error para la acción.