如何避免在项目渲染器中加载“if语句”

我有一个包含图像,标签和复选框的列表的项目渲染器。

这些显示取决于列表的dataProvider属性。

例如,如果图像是高级图像,则显示高级标签,如果图像是最喜欢的,则显示星号等。

问题是我有一个巨大的if语句,这似乎不是很好的做法。

那么我怎样才能将显示器组件的逻辑分开?

谢谢


你不会说你使用的是什么版本的Flex。 在Flex 4中,您可以使用状态,然后使用基于状态的includeIn。 如果您使用的是Flex 3,则可能需要查看flexdiary.blogspot.com上的TileList_withStyle和DataGrid_withStyle,然后使用样式执行此操作。

你也可以看看Robotlegs。 过去我通过使用Mediator来“观察”渲染器上的数据并在渲染器内部打开和关闭事物,从而完成了这种事情。

链接地址: http://www.djcxy.com/p/5913.html

上一篇: How to avoid loads of 'if statements' in item renderers

下一篇: Flex/AS3 Using Multiple Item Renderers In a List