前言:之前利用过 ViewModel 进行过 UITableView 相关的业务解耦。新年后,结合曾经看过的一个网友的思路,我这里针对事件传递,又做了一次改进,思路是将事件通过 ViewModel 进行传递。
场景:
tableView 列表页 某个Cell 中的按钮点击, 会触发ViewController 中 获取新数据,并刷新列表
具体代码
我这里是按照我的习惯这么创建的,和上面链接里的习惯一样
创建VC、ViewModel、Cell、Model 4个角色
接下来在 AViewModel 中 定义事件回调
image
然后,VC中这样创建ViewModel
image
之后,Cell中拿到响应事件后,通过VM传递出去
image
最后,VC中,响应事件