В промисе CacheStorage возвращается Null value

Уважаемые Гуру!

Только начал смотреть javascript , поэтому возможно вопрос не корректный. Я использую new CacheStorage API следующим образом:

    function cacheOpen() {
    if (window.caches && !sharedCache) {
        sharedCache = window.caches.open(CACHE_NAME);
    }
}
export function enforceCacheSizeLimit(limit: number) {
    cacheOpen();
    if (!sharedCache) return;
 
    sharedCache
        .then(cache => {
            
            if (!cache) return; 
            
            cache.keys().then(keys => {
                for (let i = 0; i < keys.length - limit; i++) {
                    cache.delete(keys[i]);
                }
            });
        });
    }

Т.к. в случае , если промис не разрешается , т.е. cache = null. то возникает ошибка в браузере. Я вставил строку:

if (!cache) return;

Но хотел бы разобраться по какой причине это происходит и что лучше сделать в этом случае?

Можно ли где то взглянуть на исходные коды CachStorage? Повторил вопрос на github


Ответы (0 шт):