为什么我应该使用goog.ui.Checkbox而不是常规输入?

时间:2014-04-08 21:03:09

标签: javascript input rendering semantics google-closure

谷歌关闭提供了一个自定义复选框组件,似乎创建了一个简单复选框的开销。为什么值得使用呢?

我大量使用谷歌封闭框架,我想知道使用这些输入替换组件是否有意义。

答案可以扩展到解释是否应该用goog.ui.Textarea替换 text 输入。

2 个答案:

答案 0 :(得分:1)

你不必。但有时您可能想要使用它,因为goog.ui.CheckBox具有树状态:CHECKED,UNCHECKED,UNDETERMINED,而普通复选框只有两种状态。

答案 1 :(得分:1)

我自己得到了答案:两者都很好,取决于他们的用途。谷歌闭包的所有这些自定义输入有一些共同点:它们扩展goog.ui.Control。此组件对于处理状态非常有用:disabledhoveractivefocused。这意味着以下内容:

  1. 如果您只是为新数据库记录创建表单,则使用这些组件毫无意义。这太过分了。接收数据的简单输入甚至可以通过邮寄方式发送(goog.ui.Control无法自行完成此操作。)
  2. 如果您要创建处理事件和/或状态的动态网络界面,那么使用{{1}会好得多鉴于它已经处理了这些事件,它能够使用它的后代/后代进行一些默认事件和状态变化处理。
  3. 唯一的例外是,如果您将goog.ui.Control混合使用表单输入,并且您希望获得统一的用户体验。在这种情况下,您必须使用样式表或牺牲其中任何一个的复杂性/维护。