浅谈mvvm模式和mvp模式–>vue.js
传统的前端开发 mvp模式
![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/3b6d15c277e14ff0d042adbbdbf3246c.png)
model:数据层 (模型层,可以抽象理解为数据,例如:用ajax中获取数据)
view:视图层
presenter: 控制器层
MVP代码实例
![JQ](https://i-blog.csdnimg.cn/blog_migrate/9f16da681d8313b2cee0d395d1691e2e.png)
p层控制器为核心层:大量的代码都在操作dom
MVVM模式
![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/5485920b00be6fe209d5c13e7b8efbfc.png)
vue框架通同样有v层和m层,没有p层,多了一层vm层。
vm层:虚拟dom+es5的小方法Object.defineProperty
mvvm层最核心的层是数据层
因此:mvp面向p层(DOM)开发,mvvm层面向数据开发
因此 mvvm让代码量变得更少