我目前正在使用Eclipse / Worklight v6.2开发移动网络应用。该应用程序使用本地json存储进行数据存储。当我使用FireFox v33.1运行我的应用程序并从我的应用程序中的一个函数清除json存储时,它完全按预期工作。但是,如果我在调用相同的函数时使用FireFox Developer Edition v35.0a2,则不会清除本地json存储,并且出现以下错误:
"main :: localStoreClear :: Attempting to destroy JSON store..."
Uncaught Exception: TypeError: meta is null at (compiled_code):1751" worklight.js:4886
WL.Logger</__log() worklight.js:4886
WL.Logger</</PUBLIC_API[priority]() worklight.js:5240
WL.Logger</window.onerror() worklight.js:5202
TypeError: meta is null jsonstore.js:1751
这是我正在调用的应用程序中的功能:
/**
* Destroy the local JSON store and reinitialise it
*/
function localStoreClear() {
WL.Logger.info("main :: localStoreClear :: Attempting to destroy JSON store...");
WL.JSONStore.destroy()
.then(function() {
WL.Logger.info("main :: localStoreClear : Destroyed!");
// Reinitialise store
localStoreInit();
})
.fail(function() {
WL.Logger.info("main :: localStoreClear : Failed to destroy!");
});
}
从我收到的错误消息中,看起来错误是在jsonstore.js文件中抛出的?任何人都可以告诉我,如果我做错了什么,或者FireFox Developer Edition和Worklight之间是否存在兼容性问题?
非常感谢,
克里斯。
答案 0 :(得分:0)
<强>答案:强>
Firefox Developer Edition不是受支持的浏览器。如果您在支持的浏览器上遇到此问题,则可能需要open a PMR执行重现步骤。您可以open a feature request将该浏览器设为支持的浏览器。
解决方法:强>
如果您不介意删除HTML5 local storage内的所有内容,这将清除JSONStore在仅限JavaScript的环境(即Android,iOS,WP8或Win8)中运行时保存的所有内容:
localStorage.clear();
如果您想要更具选择性,我相信所有JSONStore html5本地存储密钥都以jsonstore
为前缀。您可以按照以下步骤查看本地存储here。
注意:以上信息仅适用于在网络浏览器上运行的JSONStore代码。