0

我的数据库中有一个表。我正在将行添加到创建的数据存储中。

var journal_db = [];
var db;

这是我的数据存储:

Ext.define('iPolis.store.journalStore', {
extend: 'Ext.data.Store',

requires: 'Ext.DateExtras',

config: {

    model: 'iPolis.model.journal',

    data : journal_db

}
});

我正在将行添加到我的数据存储中,如下所示:

for (var i=0; i < results.rows.length; i++){
          row = results.rows.item(i);
        journalStore.add({'id':row['id'],'infoLine':row['infoLine'],'eventDate':row['eventDate'],'address':row['address'],'text':row['text'],'place':row['place']});

  }

它给了我一个参考错误 Uncaught ReferenceError: journalStore is not defined。谁能帮我将行添加到数据存储区?

4

2 回答 2

1

您需要在使用它之前创建商店实例

var journalStore = Ext.create('iPolis.store.journalStore');
for (var i=0; i < results.rows.length; i++) {
     journalStore.add(results.rows.item(i));
}
于 2012-04-12T10:24:36.810 回答
0

在这里,Sencha Touch 理解journalStore为一个变量。我在任何地方都看不到它……所以也许它真的没有定义。

要获取您的商店,只需在您的商店定义中添加一个 id,例如:id: 'journal-store'并且只要您想获得它,只需使用Ext.getStore('journal-store').

希望能帮助到你。

PS:如果你的 Store 不是自动创建的(通过其他组件的配置,例如 Ext.List),你必须显式创建它。添加

journalStore = Ext.create('iPolis.store.journalStore');

它应该可以工作。

于 2012-04-10T09:47:21.837 回答