Jquery 如何等待 indexedDB 从存储的对象中读取并将其放入 backbone 集合

Jquery How to wait indexedDB to read from stored object and put it in backbone collection

我有这个jquery函数:

fillCities: function () {
            var self = this;
            $.indexedDB("xyz").objectStore("cities").each(function (elem) {
                   var act = elem.value;
                   self.cities.push(act);
            });
        },

我想等到它把所有元素填入城市然后调用render(); 谢谢并致以最诚挚的问候。

您似乎在使用 jquery-indexeddb plugin。如果是这样,$.indexedDB returns 一个承诺,所以你可以等待相应地调用你的 render 函数:

fillCities: function () {
  var self = this;
  var promise = $.indexedDB('xyz').objectStore('cities').each(function(elem) {
    var act = elem.value;
    self.cities.push(act);
  });

  promise.done(function() {
    view.render();
  });
}