1

Итак, у Chrome есть свой собственный локальный API хранения. Я использовалБиблиотека использует localStorage - Интернет-магазин Chrome

chrome.storage.local.set({"item": itemValue}); 

и

chrome.storage.local.get("item", function (result) { 
    console.log(result); 
}); 

Для всех моих звонков хранения.

Проблема, с которой я сталкиваюсь, я разработал игру HTML5 с Phaser.js, и она включает в себя инструкцию localStorage где-то внутри нее, что не позволяет мне вообще просматривать мою игру. Поэтому вместо этого я получаю эту ошибку в консоли:

window.localStorage is not available in packaged apps. Use chrome.storage.local 

и черный экран.

Что бы вы сделали в этом случае? Я не разрабатываю Phaser.js Есть ли какая-то функциональность, которую я могу отключить в Chrome/API, или я вообще не беспокоюсь о Chrome Web Store?

+0

вы не должны быть разработчиком библиотеки, чтобы изменить его. по крайней мере, вам нужно выяснить, что он использует localStorage для ao, вы знаете, что сломается при использовании ответа ниже. –

ответ

3

Попробуйте загрузить этот код, прежде чем загрузить Phaser.js:

window.localStorage = undefined; 

Или:

window.localStorage.getItem = undefined; 
+0

Да, это сработало: D Оставь это немного для дальнейших мыслей по этому вопросу. – Vlad

+1

Да, это также, вероятно, сломало приложение тонкими способами. – Xan

Смежные вопросы