Vue.js核心技术解析与uni-app跨平台实战开发
上QQ阅读APP看书,第一时间看更新

1.1 什么是Vue.js

首先看一下Vue.js的官方文档。

Vue是一套构建用户界面的渐进式框架。与其他大型框架不同的是,Vue被设计为可以自底向上逐层应用。Vue的核心库只关注视图层,不仅易上手,还便于与第三方库或已有项目整合。

对于刚接触Vue的读者来说,以上官方简介并不是很好理解。通俗地讲,Vue只是一个工具,并且是一个只能在浏览器中运行的工具,其作用是将Ajax获取到的数据进行页面整合。

1.1.1 当前流行的前端框架

当前比较流行的前端框架,分别是Angular.js、React.js和Vue.js。

Angular.js发布于2009年,是由谷歌团队发布的。

React.js发布于2013年,是由Facebook团队发布的。

Vue.js发布于2014年,是由我国程序员尤雨溪发布的。

1.1.2 为什么要学习Vue.js

随着前端行业的不断发展,现在的前端技术人员不只做HTML页面、写JS特效,更多的是需要和后端人员配合,调用后端接口,拿到数据并且渲染到页面上。

在只做静态页面的时代,后端人员眼中的前端人员只是一个切图的。随着前后端的分离,前端人员和后端人员也变成了“平起平坐”的局面。

从设计理念上看,以前渲染数据是通过Ajax获取,获取到数据之后,经过循环遍历数据,然后拼接数据,最后进行页面整合,在整个过程中需要操作大量的DOM元素,是非常烦琐的,即使后来有了jQuery,但是本质上没变,依然是操作DOM元素。Vue.js的出现,实现了不需要操作DOM元素也可以把数据和页面进行整合。Ajax获取到数据之后,只需要给Vue,Vue会进行循环、拼接、渲染等,我们无须再操作DOM元素。

1.1.3 Vue.js核心理念

Vue.js的核心理念是数据驱动视图和组件化。

Vue.js有双向数据绑定功能,当JS中的数据发生变化时,页面视图会自动改变,只需要注意数据的变化,而不需要操作DOM元素,这就是数据驱动视图。

组件化理念是把整个页面看作一个大组件,里面的每个元素或者功能可以当作子组件,每一个组件都可以重复调用,组件是本书重点讲解的知识点之一。

1.1.4 框架和库的区别

框架和库有本质上的区别,是完全不一样的两个概念。

下面通过一个例子讲解框架和库的区别。例如想要吃饭,厨房里有各种菜,如果使用库,就需要我们拿到菜之后自己去做,库只提供工具;如果使用框架,想吃什么可以直接找一家饭店,告诉服务员要点什么,具体饭店是怎么做的我们不需要知道。

总结:库只是提供各种工具,功能的实现注重的是过程,而框架就是一个工厂,功能的实现注重的是结果。