Single Page App - вопрос по способу реализации интерфейса.

Есть такой вопрос.
Я делаю Single Page App и пытаюсь понять, как правильно сделать.
Вот добпустим у меня в меню два пункта: Пользователи и Операции.
При клике на первый пункт - открывается страница на которой есть таблицы, кнопки, списки… и все это про пользователей. А при клике на Операции, то, что было про пользователей должно исчезнуть, а появится все что касается операций.
Как правильно такое делается? Единственный вариант пока что, который мне приходит на ум - это оперировать show и hide для групп объектов. Но, возможно есть более простая альтернатива?

Есть две альтернативы

a) Задать описание всего интерфейса и переключать видимость. Только делать это лучше через multiview - тогда нужно будет вызвать только одну команду show вместо отдельных покомпонентных show|hide вызовов. Неактивный UI не отрисовывается, так что проблем с производительностью этот подход не создаст.

б) при нажатии кнопки перестраивать часть UI

webix.ui(new_config, $$(“id_to_replace”))

отработает точно так же как создание нового интерфейса, но вставит новосозданный блок на место вью с айди = “id_to_replace” ( для убираемого вью будут вызваны деструкторы )

Решение (б) имеет смысл использовать в паре с каким либо мвц фреймворком

Огромное спасибо.

Максим, не могли бы вы привести микро пример с multiview?

http://webix.com/demos/report.html

Выбор пункта в левом меню изменят интерфес правой части приложения. Здесь все возможные варианты интерфейса описаны сразу и делается только один вызов чтобы показать нужный

Если совсем, совсем минимум - то как то так - http://webix.com/snippet/d63d150c