Содержание

basis.ui

Модуль basis.ui является базой для построения интерфейса. Основной предоставляемый класс – basis.ui.Node. По сути, пользовательский интерфейс представляет собой одно большое дерево экземпляров basis.ui.Node и экземпляров потомков basis.ui.Node.

Большую часть функциональности класс basis.ui.Node наследует от своих предков, которые предоставляют определенные слои функциональности. Рекомендуется изучить эти классы перед тем как приступать к разработке на basis.js.

Классы-предки в порядке наследования и их функциональность:

  • basis.event.Emitter – события (паттерн observer);
  • basis.data.AbstractData – состояние, подписка, абстрактная синхронизация;
  • basis.data.Object – хранение данных, делегирование;
  • basis.dom.wrapper.AbstractNode – модель DOM и ее дополнения, паттерн "владелец", сателлиты;
  • basis.dom.wrapper.Node – сортировка, группировка, работа с выделением, доступность, привязка данных.

basis.ui.Node к этому стеку добавляет возможность привязки шаблона и взаимодействия с ним посредством биндингов и действий.

Так же в basis.ui определены классы basis.ui.GroupingNode и basis.ui.PartitionNode для работы с шаблонами, которые унаследованы от basis.dom.wrapper.GroupingNode и basis.dom.wrapper.PartitionNode соответственно.