MVVM笔记

简单的概念就不多说了,都有所了解。没见过也听过。

在面试复习的时候,知道这是什么东西,但是当自己在使用时,出现了无从下手的感觉。

自己记录自己要记得东西,一些具体实施的东西。

ViewModel是通过“绑定”方式与View交互的。

好处:

  • 代码复用
  • 单元测试

绑定方式:

  1. 单向数据绑定
  2. 双向数据绑定
    channelTerminal
  3. 集合数据绑定
  4. 执行过程绑定
  5. 错误处理

实施步骤:

  1. 创建base View中的属性;

  2. 创建base ViewModel对应属性的signal;

  3. 业务A Model的属性创建(使用mantle进行映射);

  4. A ViewModel 继承baseViewModel,根据业务逻辑(需求),将数据加工并映射的ViewMode的UI属性上。使用RAC的map对A Model的属性进行映射。

  5. 网络请求或者其他方式得到的数据(demoModel)。

  6. 对应得ViewModel对其获取数据的方法进行绑定,根据不同业务的模型绑定不同的获取方式。

  7. viewController中将刷新数据方式与ViewModel中获取数据的方法进行绑定。

  8. ViewModel中的scenic属性对外不暴露,所以不是一“可变”值,所以这里可以使用[RACSignal return:scenic]得到一个一次性的信号。

  9. 如果对应的scenic属性可能被外部修改,则应使用RACObserve(self, scenic)将其转变为信号。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值