对于刚刚接触前端的我来说,理解Vue的相关问题还是要从基础的模型结构入手。对于内容会持续更正、添加。。。。。。


  1. 传统的MVC模型与MVVC模型

前端设计中的经典模型,Model View Controller(MVC)。


Model:模型层,与业务逻辑相关的数据对象,从后台请求数据,简而言之就是 数据的模型;

View:视图层,没什么好说的,负责数据的显示,用户直观接触的界面,像一些表格、图形等等;

Controller:控制层,负责数据交互,作为M与V之间的数据桥梁,进行业务逻辑的处理分析,类似事件;

这里需要解释一下:

Model与数据库表格的对应不是绝对的,因为数据的存储实现不一定是数据表,也有可能是数据分片;也不需要对前端视图做出对应关系。当然View需要Model的状态,会通过Controller或View来实现与Model的交互,而不是直接操作Model。


对于MVVM模型,View部分中各种控件定义一个与之对应的数据对象,那么我们只需要修改这个数据对象就可以实现对View的更新修改了;同理,对于View的改变,相应的数据对象也会做出反应。这样产生了与View相互对应的Model--ViewModel,将Model对象封装成数据对象,作为View与Model的连接器,实现View与Model的双向绑定。


2.Vue的渐进式理解

命令式渲染:需要以具体代码表达在哪里做了什么,需要具体实现过程

声明式渲染:需要声明在哪里需要做什么,不关心具体实现

Vue的核心功能--视图模板引擎,在声明式渲染的基础上,Vue提供了组件系统、客户端路由、大规模状态管理来构建完整的框架,各部分功能相互独立,不需要整合所有部件。体现了Vue设计理念的  渐进式 ,对其理解主流说法有两种:

  • 渐进式代表的含义: 主张最少,没有多做职责之外的事;每个框架都不可避免会有自己的一些特点,从而会对使用者有一定的要求,这些要求就是主张,主张有强有弱,它的强势程度会影响在业务开发中的使用方式。(来自知乎)
  • 渐进式可以理解为:用什么拿什么;

个人认为后者的阐述便于理解,也就是说Vue虽然包含了上图中的几个组件,但我们不需要在创建工程时全部引入,每一部分都是相互独立,可以单独被使用。再描述的实际一点,Vue的每个组件都是可以单独被嵌入你现有的工程中,也就是说整个工程中可以在这里使用Vue的组件系统,可以在别的地方继续使用jQuery或者其他组件,可以很好的融合至整体功能中;当然,你也可以利用Vue的整个生态系统来进行业务开发。

Vue可以将整个网页分成可复用的组件,每个组件都有各自的Html、CSS、Javascript来渲染各自在网页中的相应部分。

(注:每个人都有各自的理解,可以通过Vue官网提供的文档来进行实际体验(Vue官网API),建议观看“介绍部分”的视频,可以对Vue有一个整体性的理解。)

浅谈Vue渐进式的理解相关推荐

  1. vue 给checkbox 赋值_浅谈vue中关于checkbox数据绑定v-model指令的个人理解

    vue.js为开发者提供了很多便利的指令,其中v-model用于表单的数据绑定很常见, 下面是最常见的例子: {{msg}} js里data初始化数据 new Vue({ el: "#myA ...

  2. 浅谈Vue.js的优势

    写在前面 今天小梦跟小伙伴们简简单单聊一下Vue.js的优势.小梦也是刚刚接触Vue.js,在学习一门新的技术之前,我们当然要了解其优势,知道优势在哪更加有利于我们去学习并转换为自己的储备. 浅谈Vu ...

  3. 浅谈Vue中的虚拟DOM

    Virtual DOM 是JavaScript按照DOM的结构来创建的虚拟树型结构对象,是对DOM的抽象,比DOM更加轻量型 为啥要使用Virtual DOM 当然是前端优化方面,避免频繁操作DOM, ...

  4. 父子组建传值_浅谈Vue父子组件和非父子组件传值问题

    本文介绍了浅谈Vue父子组件和非父子组件传值问题,分享给大家,具体如下: 1.如何创建组件 1.新建一个组件,如:在goods文件夹下新建goodsList.vue goodsList组件 expor ...

  5. web前端技术基础课程讲解之浅谈对soket的理解

    浅谈对soket的理解 定义: 网络上的两个程序通过一个双向的通信链实现数据的交换,这个链接的一端就成为Socket 它是进程通信的一种,即调用这个网络库的api函数实现分布在不同主机相关进程之间的数 ...

  6. java get请求 数组,浅谈vue中get请求解决传输数据是数组格式的问题

    qs的stringify接收2个参数,第一个参数是需要序列化的对象,第二个参数是转化格式,一般默认格式是给出明确的索引,如:arr[0]=1&arr[1]=2 //indices是index的 ...

  7. anchor锚点 antvue_浅谈vue 锚点指令v-anchor的使用

    如下所示: export default { inserted: function(el, binding) { el.onclick = function() { let total; if (bi ...

  8. 浅谈Spring IOC的理解

    浅谈Spring IOC的理解 学习过Spring框架的人一定都会听过Spring的IoC(控制反转) .DI(依赖注入)这两个概念,对于初学Spring的人来说,总觉得IoC .DI这两个概念是模糊 ...

  9. 浅谈vue的前世今生

    在近几年的web及项目开发中,从社会使用的普遍度以及受欢迎度,vue技术的使用越来越普遍,其各种资料.介绍以及使用攻略内容资料 非常多,那么vue到底什么?它的发展历程又是什么样,其中又有那些改变和优 ...

最新文章

  1. xshell查询日志命令_Polysh命令实现多日志查询的方法示例
  2. Java DNS查询内部实现
  3. myeclipse怎么集成Tomcat
  4. Maximum XOR Sum 系列问题
  5. 5个能提高你工作效率的Excel技巧
  6. Spring Boot中使用@Scheduled创建定时任务
  7. 机器学习速成课程 | 练习 | Google Development——编程练习:验证
  8. java scan hbase_hbase+java实例,Scan查询所有、get根据rowkey查询一行或一列数据
  9. kubernetes不同的命名空间下的容器能通信吗_在Kubernetes环境中,容器间如何进行网络通信?...
  10. Audio之音频帧周期(四十三)
  11. 掰碎了讲换行符和回车符
  12. android电视开发远程开关机,一种电视电脑一体机及其实现远程开关机控制的方法...
  13. 网管随笔02---【爱普生R230打印机清零大作战】
  14. 你知道的用户研究方法有哪些? 你认为应该如何进行定性和定量的研究?
  15. java 修改pdf_使用Java编辑PDF文本
  16. 十一黄金周旅游线路排行榜(图文)
  17. Leetcode_NO199_二叉树的左视图,右视图
  18. RxHttp 完美适配Android 10/11 上传/下载/进度监听
  19. 2019ubc转学分计算机科学gpa,吐血整理2019年本科转学分申请UBC
  20. 『方案』《女友十年精华》 ORC 图片 文字识别 详解

热门文章

  1. Windows API一日一练(29)SelectObject和DeleteObject函数
  2. android手机安装ubuntu并创建ubuntu图形界面(1)
  3. 设编号为1,2,… n的n个人围坐一圈,约定编号为k(1=k=n)的人从1开始报数,数到m 的那个人出列,它的下一位又从1开始报数,数到m的那个人又出列,依次类推,直到所有人出列为止,由此产生一个
  4. LeetCode 6. Z 字形变换 (N字形变换)
  5. 【转】一个游戏程序员的学习资料
  6. Druid后台监控与过滤器
  7. 独立循环神经网络(indRNN)
  8. 顺序表的基本操作C++
  9. ubuntu 安装thinkphp-swoole
  10. Java程序设计 # 3