版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
优点:
View)和模型(Model),降低代码耦合,提高视图或者逻辑的重用性:比如视图(View)可以独立于Model变化和修改,⼀个ViewModel可以绑定不同的View上,当View变化的时候Model不可以不变,当Model变化的时候View可以不变。你可以把⼀些视图逻辑放在⼀个ViewModel里面,让很多view重用这段视图逻辑ViewModel的存在可以帮助开发者更好地编写测试代码dom中解放缺点:
View的代码有Bug,也可能是Model的代码有问题。数据绑定使得⼀个位置的Bug被快速传递到别的位置,要定位原始出问题的地方就变得不那么容易了。另外,数据绑定的声明是指令式地写在View的模版当中的,这些内容是没办法去打断点debug的model也会很大,虽然使用方便也很容易保证了数据的⼀致性,但是长期持有,不释放内存就造成了花费更多的内存ViewModel的构建和维护的成本都会比较高