vue-webapp初体验之--mvvm的简单介绍

mvvm简介

mvvm是 Model(模型) View(视图) ViewModel(视图模型) 的简称。这就是页面渲染和数据交互的全部内容。下面看图说话:

1、View也就是视图,也就是dom ;
2、Model也就是模型,简单理解成JavaScript相关数据;
3、ViewModel也就是视图模型,也就可以理解成沟通view已经model的桥梁(这不是废话么);

何谓桥梁?
1.当用户进行dom操作时view就会告诉vm,然后vm会根据自定义的相关操作然后告诉model说下那个变量x给这么动一下。
2.当model发生改变时model就会告诉vm这个数据变了,然后vm根据自定义相关操作通知view这个dom节点需要改变。
3.vm充当的是一个观察者的角色,时刻关注着view/model的变化。

为什么要用mvvm

1、简化复杂逻辑数据交互

举个栗子:在使用原生js或者jq中数据发生变化,首先需要通过选择器找到相关dom节点,然后进行操作例如element的显隐、dom增减、类的添加等等,在mvvm中,只需要采用适当的指令,绑定相关变量即可操作,免去诸多逻辑上的烦恼。

2、实现单页页面

为毛要单页呢?以往项目中请求新的页面都要通过页面刷新,都需要全部请求新的资源。虽然资源可以通过缓存机制进行优化,但是新页面的加载js,css,html文件全都要被浏览器重新解析,造成资源的浪费,尤其是对移动端十分不友好。通过单页应用的异步请求局部刷新这一特性,解决了这一个问题。(同样要说的是,spa单页对seo的打击也是毁灭性的。)

ps:参考视频:慕课网饿了么实战;

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 前言 看了下上篇博客的发表时间到这篇博客,竟然过了11个月,罪过,罪过。这一年时间也是够折腾的,年初离职跳槽到鹅厂...
    西木柚子阅读 21,290评论 12 184
  • iOS应用架构谈 view层的组织和调用方案 iOS应用架构谈 开篇 iOS应用架构谈 view层的组织和调用方案...
    其实也没有阅读 1,833评论 0 15
  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 173,105评论 25 708
  • 人要隐藏多少秘密,才能安然度过这一生。每隔一阵子,在街头、地铁和咖啡馆里,我都会想起这句话。 昨天晚上,这种念头再...
    一千个春天阅读 450评论 0 2
  • 考完试 嗯很烦 阅读没写完 听力没写完 口语没讲完 来85度C啦!逛街 买口红 吃东西 嘻嘻 下午4:18 来自一...
    YYYYYang_阅读 139评论 0 0