vue

vue

一套用于构建用户界面渐进式JavaScript框架

  • 构建用户界面:将数据通过某种办法变成用户可以看见的界面。Vue 并不关心怎么得到数据(发送请求、模拟数据或者是死数据),Vue 只关心在得到数据之后如何将它变成界面;

  • 渐进式:所谓的渐进式是指 Vue 可以自底向上逐层应用。如果应用比较简单,那么只需要一个轻量小巧的核心库(压缩完之后只有 100kb 左右);如果是一个比较复杂的应用,则可以引入各式各样的 Vue 插件;

vue的特点

  1. 采用组件化模式,提高代码复用率、且让代码更好维护。

代码利用率:将一个框里的所有功能变成一个文件,就是组件。

代码维护:就是如果你改了news.vue组件里面的css样式,也不会影响到其他两个组件。

在 Vue 中,一个 .vue 文件就是一个组件,它包含了 html 结构、css 样式以及 js 交互。

就比如说你看到别人设计的activity.vue这个组件,觉得很好想要,就可以直接引用这个vue组件。

  1. 声明式编码,让编码人员无需直接操作DOM,提高开发效率。

命令式编码:告诉怎么做(按照指定的步骤执行,缺一不可),就比如说要喝水,下命令要先拿起水杯,倒水,在喝水。

声明式编码:只要告诉要做什么就可以,就比如说要喝水,就会自动完成一系列的动作。

  1. 使用虚拟DOM+优秀的Diff算法,尽量复用DOM节点。

原生 JavaScript 实现

Vue 实现

虚拟 DOM 就是内存中的数据

对于新增的数据,Vue 会将新的虚拟 DOM 和旧的虚拟 DOM 进行比较( Diff 算法),将相同的部分直接进行复用。