0

我观看了有关 GWT 性能的 Google I/O 视频,该视频建议尽可能多地使用 Cell Widget,因为它们比普通 Widget 更快且重量更轻。

我正在尝试确定是否应该使用:

  • com.google.gwt.user.client.ui.Button(按钮小部件);或者
  • com.google.gwt.cell.client.ButtonCell(单元格小部件)

我读过关于小部件和单元格的一些相互矛盾的文献;一些作者说,只有在没有任何需要响应的事件时才使用单元格。

所以我问:单元小部件没有处理程序并且无法响应事件是真的吗?如果是这样,ButtonCell肯定会被点击的a有什么用!如果这不是真的,那么似乎单元小部件完全替代了“旧”小部件框架 - 这是真的,还是还有Button其他“旧”小部件同类的用例?

4

1 回答 1

2

严格来说,ButtonCell 不是一个“单元格小部件”,它是一个“单元格”,用于像 CellList 或 CellTable 这样的单元格小部件来呈现其内容。

用于显示大量类似结构的数据(列表/表格)以及在此类表格中呈现特定“单元格”的单元格小部件 - 您应该使用这些轻量级的无状态小部件(ButtonCell、TextCell)。好处来自生成的 dom 元素和 JS 的数量更少。此外,CellWidgets 仍然可以接收浏览器事件,但您应该明确指定它。有关此主题的更多信息 - 请参阅Google 官方指南

如果您不使用单元格小部件 - 您不需要使用单元格,例如,如果您想制作一个用户输入表单并放置一些标签和按钮 - 使用标签和按钮小部件,如果您需要显示列表>100 行 - 您可能希望在 CellList 小部件中使用 TextCell 和 ButtonCell。

于 2012-10-31T00:13:32.830 回答