谷歌封閉提供了一個自定義的複選框組件,似乎創建一個開銷來呈現一個簡單的複選框。爲什麼它值得使用它?爲什麼我應該使用goog.ui.Checkbox而不是常規輸入?
我大量使用Google閉包框架,我想知道是否使用這些輸入替換組件是有意義的。
答案可以擴展來解釋如果一個文本輸入也應該用goog.ui.Textarea替換。
谷歌封閉提供了一個自定義的複選框組件,似乎創建一個開銷來呈現一個簡單的複選框。爲什麼它值得使用它?爲什麼我應該使用goog.ui.Checkbox而不是常規輸入?
我大量使用Google閉包框架,我想知道是否使用這些輸入替換組件是有意義的。
答案可以擴展來解釋如果一個文本輸入也應該用goog.ui.Textarea替換。
我自己找到答案:兩者都很好,這取決於它們的用途。所有這些谷歌關閉的自定義輸入都有一些共同點:它們擴展了goog.ui.Control
。該組件對於處理狀態非常有用:disabled
,hover
,active
和focused
。這意味着以後的事:
goog.ui.Control
無法自己完成)。goog.ui.Control
給它已處理這些事件,它是能夠進行某些默認的事件和狀態的變化與處理的它是上帝/後裔。這裏唯一的例外是,如果您將goog.ui.Control
與表單輸入組合在一起,並且您想要統一的用戶體驗。在這種情況下,你必須玩風格表或犧牲其中任何一個的複雜性/維護。
你不需要。但有時你可能想要使用它,因爲goog.ui.CheckBox具有樹狀態:CHECKED,UNCHECKED,UNDETERMINED,而普通的複選框只有兩種狀態。