Skip to main content
Mixin que fornece métodos para cachear dados no localStorage com tempo de expiração baseado na configuração window.Yampi.cache.js. Evita requisições desnecessárias à API para dados que mudam com pouca frequência.

Uso

import cacheMixin from '@/mixins/cache';

export default {
    mixins: [cacheMixin],
    methods: {
        async loadData(productId) {
            const cached = this.getLocalStorageCache({ itemId: productId, itemAlias: 'product' });
            if (cached) return cached;

            const data = await fetchProduct(productId);
            this.setLocalStorageCache({ itemId: productId, itemAlias: 'product', data });
            return data;
        },
    },
};

Métodos

MétodoParâmetrosDescrição
setLocalStorageCache{ itemId, data, itemAlias }Salva data no localStorage com TTL em minutos (window.Yampi.cache.js, padrão 10).
getLocalStorageCache{ itemId, itemAlias }Retorna o dado cacheado ou null se expirado ou inexistente.
removeLocalStorageCache{ itemId, itemAlias }Remove o item do localStorage.
getLocalStorageCacheKey{ itemId, itemAlias }Retorna a chave usada no localStorage ({itemAlias}_{itemId}).