iOS 解耦 --- 利用ViewModel沟通 View 与 ViewController

前言:之前利用过 ViewModel 进行过 UITableView 相关的业务解耦。新年后,结合曾经看过的一个网友的思路,我这里针对事件传递,又做了一次改进,思路是将事件通过 ViewModel 进行传递。

场景:

tableView 列表页 某个Cell 中的按钮点击, 会触发ViewController 中 获取新数据,并刷新列表

具体代码

我这里是按照我的习惯这么创建的,和上面链接里的习惯一样


创建VC、ViewModel、Cell、Model 4个角色

接下来在 AViewModel 中 定义事件回调


image

然后,VC中这样创建ViewModel


image

之后,Cell中拿到响应事件后,通过VM传递出去


image

最后,VC中,响应事件

你可能感兴趣的:(iOS 解耦 --- 利用ViewModel沟通 View 与 ViewController)