У меня есть приложение backbone.js, чьи представления имеют несколько состояний, которые существенно отличаются друг от друга («Вид», «Изменить» и т. Д.). Для каждого представления есть как минимум 2 разных шаблона. Хорошо. Моя проблема связана с кодом управления представлением JS.Управление представлениями со сложными состояниями
Я полагаюсь на подход initalize-thin-render-thick (который, я думаю, очень плохой), где метод визуализации - это где 80% -90% логики. Когда я хочу изменить состояние, я просто вызываю метод визуализации с определенным параметром («просмотр», «редактирование»). Исходя из этого, мнение решает, что показывать, а что нет, к каким событиям привязываться и т. Д.
Я думаю, что это плохо, потому что с одной стороны он создает узкие места в процессе рендеринга, это не правильная машина состояний, а это означает, что я не несу никаких возможных обратных вызовов, которые могли быть связаны ранее. Когда я получаю представление, я просто очищаю представление, и все.
Я также заметил, что я не использую делегированную систему событий, предоставляемую магистралью, которая, как я думаю, является другим минусом, потому что я думаю, что она очень хорошо реализована (BTW, она обязательно отключает обратные вызовы, когда какой-то элемент DOM удален?)
Мне кажется, мне нужен серьезный рефакторинг. Пожалуйста, помогите с некоторыми советами относительно того, какой лучший подход для многогосударственного представления Backone.