2016-10-21 6 views
0

В Firefox ESR (45.4.0) localforage выбрасывает UnknownError по первому getItem, setItem или clear заявление. Но только первый, независимо от того, сколько времени проходит, пока это не произойдет. Однако значение получает чтение/запись.Почему localforage бросает «UnknownError» в Firefox ESR?

Может кто-нибудь объяснить, почему это происходит в Firefox ESR, но ни в «нормальном» Firefox, Chrome или Safari?

Рассмотрим следующий пример:

<html> 
<head> 
    <meta charset="utf-8"> 
    <script src="https://cdnjs.cloudflare.com/ajax/libs/localforage/1.4.3/localforage.js"></script> 
    <script> 
    setTimeout(function() { 
     localforage.setItem("foo", 123) 
     .then(function (value) { console.log("value = " + value); }) //value = 123 
     .catch(function (err) { console.error("error: " + err); }); 
    }, 2000); 
    </script> 
</head> 
<body> 
Hello World! 
</body> 
</html> 

Консоль вывода: enter image description here

ответ

-1

От багтрекер localForage, где этот вопрос has been reported:

Firefox не позволяет получить доступ к индексированной/Localstorage, если браузер находится в закрытом режиме.

+0

Если в «частном режиме» они означают режим инкогнито, я не использую это. – jaySon

+0

@jaySon Chrome имеет «режим инкогнито», Firefox имеет «частный просмотр». Я могу только предположить, что Firefox ESR по умолчанию использует приватный просмотр. –

+1

@jaySon, возможно, стоит попробовать использовать собственный «localStorage» и проверить, не указаны ли какие-либо ошибки. В консоли введите: localStorage.setItem ("foo", "bar") '. –