[w3c/ServiceWorker] Open(cacheName) resolvse with null value, though cacheName matches key (#1524)

I apologize if the question is incorrect, I am new in javascript.
The mapbox [()](https://github.com/mapbox/mapbox-gl-js/issues/9145) uses the following code
`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]);
                }
            });
        });
}`
I insert the line 
` if (!cache) return; `
to fix my problem, but I would like to understand why this is happening.
Here `https://w3c.github.io/ServiceWorker/#cachestorage` I read 
`If cacheName matches key, then:
Resolve promise with a new Cache object that represents value.
Abort these steps.`
As !sharedCache = false, then I expect that promise wil resolve with new Cash, not undefined.
Can anyone explain to me what I'm wrong about?





-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/w3c/ServiceWorker/issues/1524

Received on Saturday, 18 July 2020 11:30:23 UTC