store.each函数给我错误

时间:2015-06-22 18:35:34

标签: extjs4

这是我的任务商店,当我尝试使用store.each获取其记录时,它会给我TypeError:store.each不是函数

  store = Ext.create('Ext.data.TreeStore', {
                        model: 'Task',
                        folderSort: true,
                        sortInfo: {
                            field: "StartDate",
                            direction: "ASC"
                        },
                        root:
                                {
                                    text: '.',
                                    expanded: true,
                                    children: arrTasksData
                                }
                    });

点击它我有一个按钮我需要访问商店记录。我使用下面的代码来访问记录。

console.log(store.getCount()); //Prints undefined
store.each(function (record,id) {
 console.log(record.get("TaskName")); 
  });

上面的代码在控制台中给出了错误:TypeError:store.each不是函数

虽然console.log(store)打印对象 但是console.log(store.getCount())打印未定义。

1 个答案:

答案 0 :(得分:0)

TreeStore使用嵌套结构作为其数据。 当您查看来自Sencha(http://docs.sencha.com/extjs/4.2.2/#!/api/Ext.data.TreeStore)的API文档时,没有可供您使用的getCount()方法。 对于处理Frameworks,API文档是您最好的朋友!

因此,您的store.getCount()无法正常工作。 您需要编写自己的函数来计算叶子节点。

我为此目的写了一个简单的Fiddle code。 请注意,尚未对各种数据进行全面测试。 这只是为了让您了解需要做些什么。