【今天你背面试题了嘛?】MVVM和MVC区别是什么?

130 阅读1分钟

这道题可能只问MVVM, 也可能两个一起问

  • MVC : 传统的设计模式。

    • 设计模式: 一套广泛被使用的开发方式

    • M: model 模型

      • 模型:就是数据的意思
    • V : view视图

      • 视图:就是页面的意思
    • C:controller控制器

      • 控制器:在这里写js业务逻辑,把数据M 渲染到 视图 V (有点类似于我们之前学习的,把数据渲染到页面)
  • MVVC: vue所使用的设计模式

设计模式: 是一套被反复使用的、多数人知晓的、经过分类编目的、代码设计经验的总结。(代码分层, 架构设计)

  • MVVM,一种软件架构模式,决定了写代码的思想和层次

    • M: model数据模型 (data里定义)
    • V: view视图 (页面标签)
    • VM: ViewModel视图模型 (vue.js源码)
  • MVVM通过数据双向绑定让数据自动地双向同步 不再需要操作DOM

    • V (修改视图) -> M(数据自动同步)
    • M(修改数据) -> V (视图自动同步)

image.png

1. 在vue中,不推荐直接手动操作DOM!!!

2. 在vue中,通过数据驱动视图,不要在想着怎么操作DOM,而是想着如何操作数据!! (思想转变)

image.png