Почему я должен использовать goog.ui.Checkbox вместо обычного ввода?

Закрытие Google предлагает пользовательский компонент-флажок, который, по-видимому, создает накладные расходы для отображения простого флажка. Почему стоит его использовать?

Я интенсивно использую среду закрытия Google, и мне было интересно, имеет ли смысл использовать эти компоненты замены ввода.

Ответ может быть расширен, чтобы также объяснить, следует ли заменить текстовый ввод на goog.ui.Textarea.

2 ответа

Решение

Я пришел к ответу сам: оба хороши в зависимости от их использования. Все эти пользовательские входы закрытия Google имеют что-то общее: они расширяются goog.ui.Control, Этот компонент очень полезен для обработки состояний: disabled, hover, active а также focused, Это означает следующее:

  1. Если вы просто создаете форму для новой записи в базе данных, не имеет смысла использовать эти компоненты. Это излишество. Простой вход, который получает данные, может быть даже отправлен по почте (goog.ui.Control не может сделать это самостоятельно).
  2. Если вы создаете динамический веб-интерфейс, который обрабатывает события и / или состояния, гораздо лучше использовать goog.ui.Control учитывая, что он уже обрабатывает эти события и способен обрабатывать некоторые события и изменения состояния по умолчанию вместе со своими восходящими / потомками.

Единственное исключение здесь, если у вас есть смесь goog.ui.Controlс формами ввода, и вы хотите унифицированный пользовательский опыт. В этом случае вы должны поиграть с таблицами стилей или пожертвовать сложностью / поддержкой для любого из них.

Вам не нужно. Но иногда вы можете захотеть его использовать, поскольку goog.ui.CheckBox имеет древовидные состояния: CHECKED, UNCHECKED, UNDETERMINED, в то время как простой флажок имеет только два состояния.

Другие вопросы по тегам