Extjs:如何使用存储记录作为网格的存储

Extjs: How to use store record as a store for grid

本文关键字:存储 网格 记录 何使用 Extjs      更新时间:2023-09-26

我需要完成的任务概述:我已经在Ext工作了几个月了。我一直在使用js。在任何其他框架中或只使用jquery执行此操作都是一件简单的事情。在angular中,我只需要使用ng网格来显示所选日期的数据。试图在Ext中找出答案让我头疼。

我有一些JSON数据,看起来很像这样。。。

{
    "Id":"1",
    "Sunday":[
        {"Start":"10:15","End":"17:45"}, 
        {"Start":"20:00","End":"23:00"}, 
        {"Start":"00:15","End":"06:15"}, 
        {"Start":"08:00","End":"10:00"}
    ],
    "Monday":[],
    "Tuesday":[],
    "Wednesday":[],
    "Thursday":[],
    "Friday":[],
    "Saturday":[]
}

我实际需要做的事情:我在ExtJs 3.4.0页面/面板上有两个控件:

  1. Ext组合框(下拉列表),包含一周中的几天(可能来自商店)
  2. 一个Ext网格,用于显示当天的事物数组

行为:当从下拉列表中选择一个条目时,一周中该天的相关数据将用于填充网格中的行。列模型很琐碎,除了数据如何在选择一天后从JSON存储中实际获取并进入网格之外,我不担心其他任何事情。

重新迭代:我很难理解如何使用存储记录作为存储来填充网格。

理想情况下,我会用JSON数据填充arrayStore,然后只使用一行:

new Ext.grid.EditorGridPanel({
...
    store: new Ext.data.Store(data: arrayOfSchedules[drodown.getValue()])
...
})

如果需要的话,我可以提供一个灌篮器或类似的东西。数据的格式确实定义了一切。

您不需要在每个组合选择上创建新的网格/存储。您可以提取选定日期(星期日)的数据,然后使用grid.store.loadData更新网格。