0

我正在使用 $localForage.setItem 在离子移动应用程序中本地存储数据。数据约为 7MB,使用 setItem 时应用程序会冻结几秒钟。

任何建议如何解决?

4

1 回答 1

0

您可以利用 Promises 允许应用程序在获取数据时继续运行。

localforage.getItem("sellerName").then(function(sellerName) {
         // .... Any code that DEPENDS ON THIS DATA goes here.
         // THIS code will have a pause prefacing it, but code
         // outside of this funtion will continue to process.
});

希望这可以帮助你!如果您的数据依赖于正在检索的数据,您可能需要尽快检索(例如缓存它)或暂时在屏幕上放置一个加载器图像。祝你好运!

附录:你可以试试这个,我用它来获取“大数据”并获取多个大数据结果......

var getLogs = $.ajax({ type: 'GET', url: 'testget.php?more=1' });
$('#results').html('Loading...');
$.when(getLogs).then( function(getLogs) {
   $('#results').html(getLogs);
}, handleError);
function handleError(xhr, status, error) {
   console.log("There was an Error: " + error.toString());
}

这应该可以解决您的问题。^5

于 2016-03-15T21:24:20.537 回答