Должен ли ViewModel отвечать за события обновления / публикации? - PullRequest
0 голосов
/ 22 января 2019

Я изучаю шаблон MVVM-Coordinator, и это вопросительный знак.ViewModel несет ответственность за выборку и форматирование данных, которые View может принять и просто показать пользователю.Координатор контролирует навигацию.Какая часть должна отвечать за события post / update, например, выполнение методов входа в систему / регистрации API, выполнение комментариев / подобных запросов?Это также является обязанностью ViewModel или координатора?

В этой статье говорится, что координатор должен отвечать за навигацию и мутацию модели: http://khanlou.com/2015/10/coordinators-redux/

Но я нахожу примеры, когда ViewModel также выполняет мутацию.

1 Ответ

0 голосов
/ 22 января 2019

Ну, я думаю, это немного субъективно, но я бы определенно сказал View Model.Координатор используется для навигации, а модели - это просто объекты.И, как вы знаете, модель представления - это то, к чему относится бизнес-логика.

В моем случае у меня есть выделенный уровень абстракции (Сервис), где я реализую каждый сетевой сервис и запрос.Тогда моя модель представления просто запрашивает данные и отправляет ViewController.Я делаю это потому, что в приложении, интенсивно использующем сеть, ваши модели представлений будут иметь слишком много кода, а также потому, что представьте, что у вас одна модель представления на контроллер представления, а затем вам нужно сделать один и тот же запрос в двух разных сценариях.Будете ли вы дважды создавать один и тот же ViewModel для двух разных контроллеров представления?

Все немного субъективно, но из моего опыта это лучший подход.

Надеюсь, это поможет.

...