走进vue.js(一)

走进vue.js(一)

vue.js作为目前最具前景的前端框架之一,既然如此,博主贯彻以往的作风,肯定要捣鼓一番,经过为期半个多月的研究,算是对vue有了深刻的理解与认识,下面分三个章节解开vue.js的神秘面纱。本文旨在帮助大家认识vue.js,了解vue.js的开发过程,并进一步讲解如何通过vue.js构建一个大中型的前端项目。

vue.js的简介

如果现在给一个场景,新学期开学,在学习氛围浓重的教室中,老师点名说:坐在后排戴眼镜的那个男孩看你精神抖擞,似乎有很多话对老师说吧,做个简短的自我介绍,让大家认识下你,机智的男孩一般都这样做:立马把眼镜去掉(没错,博主就是这样做的),然并卵,不得不站起来自我介绍:

我叫vue.js,我是一个构建数据驱动的web界面的框架,我来自国内,我的核心是一个响应的数据绑定系统,这时候,老师发问:"欢迎来到我的班级,告诉我你的目标是什么?答曰:我的目标是实现响应的数据绑定和组合的视图组件,造福千千万万个码农,顿时,班级里掌声一片。

从上面的介绍中,我们不难发现vue.js是一款轻量级的以数据驱动的前端js框架,它与JQUERY最大的不同点在于jquery通过DOM来改变页面的显示,而vue.js通过操作数据来实现页面的更新与展示,下面便是vue数据驱动的概念模型

vue.js

vue.js主要负责的是上图绿色正方体ViewModel的部分,它在View层(即:dom层)与Model层(即js逻辑层)之间通过ViewModel绑定了DOM Listeners 与Data Bindings两个相当于监听的东西。当View层的视图发生变化时候,Vue会通过DOM Listeners来监听并改变Model层的数据,相反,当Model层发生变化时,它也会通过Data Bindings来监听并改变View层的视图,这样便实现了一个双向数据绑定的功能,也是Vue.js数据驱动的原理。

vue实例

在一个html文件中,我们可以通过script标签引入Vue.js,然后就可以写代码了。上图中我们通过new Vue()构建了一个Vue的实例,在实例中主要包括以下几部分:挂载元素(el)、数据(data)、模板(template)、方法(method)与生命周期钩子(created)等,它们具体表示什么呢?如下
el:表示我们的Vue作用范围,'#app'则是指Vue作用于id为app的元素区域
data:Vue数据对象,data的属性能够响应数据的变化
created:表示实例生命周期中创建完成的那一步,当实例已经创建成功之后将调用其方法。

Vue常用指令

指令说明

1.v-text:用于更新绑定元素的内容,类似于jq的text()方法。
2.v-html:用于更新绑定元素的html内容
3.v-if:用于根据表达式的真假条件渲染元素,如上图如果P3为false则不会渲染p元素。
4.v-show:用根据表达式值得真假条件显示隐藏元素,切换元素的display css属性。
5.v-for:用于遍历数据渲染元素或者模板,如上图中P6为[1,2,3],则会渲染3个p元素,内容依次为1,2,3。
6.v-on:用于在元素上绑定事件,图中在p标签上绑定了showP3的点击事件。

关于更多的vue指令,可以参考官方中文文档。

vue指令中文文档

Vue.js技术栈

以上我们讲到可以直接在一个html页面里通过引入Vue.js来直接写Vue代码,但是这样的方式并不常用。因为如果我们的项目比较大,项目中会存在很多页面,一旦每个页面都引入一个Vue.js或者声明一个Vue实例,这样非常不利于后期的维护和代码的公用,也会存在实例名冲突的情况,所以我们需要用到Vue提供的技术栈来构建强大的前端项目。
除了Vue.js我们还需要用到:
vue-cli:Vue的脚手架工具,用于自动生成Vue项目的目录及文件。
vue-router: Vue提供的前端路由工具,利用其我们实现页面的路由控制,局部刷新及按需加载,构建单页应用,实现前后端分离。
vuex:Vue提供的状态管理工具,用于同一管理我们项目中各种数据的交互和重用,存储我们需要用到数据对象。
ES6:Javascript的新版本,ECMAScript6的简称。利用ES6我们可以简化我们的JS代码,同时利用其提供的强大功能来快速实现JS逻辑。
NPM:node.js的包管理工具,用于同一管理我们前端项目中需要用到的包、插件、工具、命令等,便于开发和维护。
webpack:一款强大的文件打包工具,可以将我们的前端项目文件同一打包压缩至js中,并且可以通过vue-loader等加载器实现语法转化与加载。
Babel:一款将ES6代码转化为浏览器兼容的ES5代码的插件
利用以上等技术,我们便可以开始构建我们的Vue项目了。
下一章节我会通过一个简单的vue项目,告诉大家如何利用vue去开发项目,预知后事如何,且听下回辩解。(一完)

2016年12月11日14:39

posted @ 2016-12-11 14:48  追梦-dream  阅读(563)  评论(0编辑  收藏  举报