请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

老师, 想问一下现在问MVVM需要讲一下MVC和MVP吗?

看了很多讲MVVM的面试题, 都会先讲一下MVC, MVP, 而这里先讲组件化。。。

这块儿不知道怎么答比较好。。 下面是我听课记得笔记, 你看这样答可以吗?

首先很久之前就有组件化的概念, 使用 asp jsp php 就可以。node.js
中也有类似的组件化。Vue和React搬过来,做了一个创新:数据驱动视图。

enter descriptionhere

对比 Vue, React 组件化

enter descriptionhere

但是, 传统组件它只是静态的渲染, 也就是说我们想显示谁的个人信息, 就要在后端拼接完数据去渲染。 渲染完页面就形成了,
不会再去改变了。你再需要去改需要自己去操作 DOM。所以当时 jQuery 是很流行的。因为操作 DOM 很多。

有了 vue 之后, 使用数据驱动视图。 vue 可以通过 MVVM 模式执行的数据驱动视图。我们不再去操作 DOM, 我们想改什么地方,
直接去改 vue 里的数据就可以了。然后 vue
框架本身帮我们根据数据重新渲染视图。这一点是跟传统组件本质的区别。也正是因为这一点,让我们做 vue 开发的时候,
更加关注于数据。所谓数据也就是更加关注业务逻辑。而不是一直操作 DOM。

enter descriptionhere

  • M: Model 层 (vuex,data)
  • V:View 层 (视图)
  • VM: ViewModel 层

View 层通过 ViewModel 和 Model 做关联,像监听事件,监听指令等等。

在 Model 修改的时候,就能立刻执行 View 的渲染,View 层里面有什么点击事件,各种 DOM 事件监听的时候, 都可以去修改
Model 这一层的数据。

所以说这就是数据驱动视图。通过修改 Model 数据去驱动视图 View。这个视图不用我们亲自操作。

解题思路:
MVVM 要能把图画出来,并且结合代码来讲清楚。

在解释 MVVM 时要把组件化和数据驱动视图也讲出来,会更全面一些。

正在回答

插入代码

1回答

你这样解释,是对组件化和 mvvm 的比较详细的解释。如果问到 mvc ,你还需要再查一下 mvc 的知识。和 mvvm 相比,它的 c 及 controller 是需要单独解释的。

可以先查一查,有啥问题再来回复。

0 回复 有任何疑惑可以回复我~
  • 提问者 沧海的雨季 #1
    非常感谢!
    回复 有任何疑惑可以回复我~ 2020-04-19 22:05:00
问题已解决,确定采纳
还有疑问,暂不采纳
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号