数据视图列表和项目

时间:2013-06-13 14:39:43

标签: extjs sencha-touch-2 sencha-architect

我正在寻找一种不同的方式来完成我的应用程序。

实际上这是一种静态的。我的项目有类别。每个类别都有子类别。类别是容器,子类别是具有可以编辑的值的元素。

在对数据进行分析后,我们发现它不够通用。我们现在正在研究一种树状结构。这样做,我们会让项目填充文件夹/类别),这些文件夹将填充其他类别/文件夹或子类别/项目/文件。这样我们就可以深入了解我们想要的复杂性。

这是可行的,我知道。我需要知道的是在app.views中实现它有多难......

是否可以让单个Ext.DataView.dataview并排显示不同的Ext.DataView.component.DataItem。

例子:在我的列表中有一行显示一个滑块并根据它自行更新,但在第二行它是一个箭头,点击它将打开我的树的下一级。

视觉:

DataView_List


小型车---------------------------标签----------------- ------- SLIDER


燃料----------------------------------标签----------- ------------------->


SUV ----------------------------------标签----------- ------------- TxtField


小型轿车和SUV是带有不同模板的叶子,燃料是需要在点击时打开的类别/文件夹。

所以我已经有3个不同的模板需要在同一个数据视图列表中显示。

我应该如何继续取得这样的成绩? Dataview列表是好的方式还是我应该在容器中实现我自己的列表?

1 个答案:

答案 0 :(得分:1)

如果您想在一个列表或数据视图中显示不同类型的数据 - 您可以通过以下策略实现:

  • 您仍然需要使用一个商店来保持所有
  • 在模型类中包含类似“record_type”字段的内容,表示您拥有的数据类型
  • 将您需要的所有数据合并到一个模型中
  • 创建一个基于'record_type'呈现不同内容的模板

以下是模板的外观:

<tpl switch="record_type">
    <tpl case="car">
      <div>CAR + SLIDER</div>
    <tpl case="fuel">
      <div>FUEL + LABEL</div>
    <tpl default">
</tpl>

这是我的列表中的屏幕截图,其中包含多种记录类型并使用此方法:enter image description here