Я думаю, что это действительно суждение, основанное на том, что делает ваше действие.Если ваше действие просто обновляет пользовательский интерфейс, имеет смысл оставить его в контроллере или представлении.Однако, если он неотъемлемо неотъемлемо связан с уровнем модели или сети, возможно, имеет смысл перенести его в модель представления.
Возможно, вы могли бы уточнить здесь свой сценарий для получения лучшего совета?
ВВообще, я бы всегда реализовывал начальный обработчик управления в представлении или контроллере.А затем при необходимости вызовите метод в модели представления.
/*
MyController
*/
myButton.add(target: self, action, #selector(buttonHandler), for: .touchUpInside)
func buttonHandler() {
// Decide here if the actual logic belongs in the view model or controller
}
Так что поймайте действия и передайте логику туда, где это наиболее целесообразно.По крайней мере, так я бы с этим справился.