week1-vuejs基础

178 阅读5分钟

课程目标

  1. vuejs 简介
  2. 掌握 MVVM 开发思想
  3. vuejs 初体验
  4. 掌握 vuejs 的常见指令
  5. 掌握 双向数据绑定
  6. 掌握 过滤器 的使用
  7. 掌握 axios 的使用
  8. 掌握 vuejs 的生命周期
  9. 掌握 vuejs 组件化开发
  10. 掌握 组件间 的通信
  11. 掌握 单文件组件
  12. 掌握 vue-router 的使用
  13. 掌握 vue-cli 的使用

Vuejs 简介

什么是Vue?

Vue (读音 /vjuː/,类似于 view) 是国人Evan You(尤雨溪),曾任职于Google Creative Lab创建一个前端的MVVM的框架【备注:一般在前端里面对MVC进行单独的解读,有一系列的变种的叫法,例如常见的有MVVM、MVP、MVX、MV*... 但是本质上来说和的后端的MVC的思想还是差不多的】。

该框架彻底颠覆了传统的DOM操作,使用该框架后,就不再需要传统的DOM操作,以及DOM元素的修改($(“#div”).html(‘hi’)),Vue是 数据驱动 为主的,用户无需手动操作DOM元素,Vue底层会帮我们完成,而对于开发者来说更多只要去关心自己业务数据的处理,适合以数据curd操作为主的SPA应用(single page application 单页面应用: 网易云音乐、worktile、teambition.....)。

思考:为什么现在单页应用如此的火热?

在传统web开发中,基本都是靠a链接跳转来完成信息的展示;但是随着移动互联网的到来,很多的web项目都必须在手机端进行运行,这个时候如何还是传统的模式,在手机端进行页面通过a链接来跳转刷新,则势必会影响用户体验。所以单页应用慢慢的流行起来,就是在一个页面内完成所有信息的展示和基本的操作。不用页面整体刷新,只需要局部的刷新,类似一个原生的app体验。

需要注意:同类型的框架还有Google管理的angularJs、国内由司徒正美开发的avalon、国外的backbone等....

MVVM概述

MVVM是一种分层的开发思想。通过分层后,可以非常利于开发和维护。其基本的含义如下:

1.M代表模型 主要是负责业务数据的处理,前端项目中是json字面量对象(需要注意该数据一般是前台通过ajax进行获取的数据)

2.V代表视图 主要是业务数据在用户面前显示和数据的收集,前端项目中是html(表现形式主要是做页面展示和用户的登录或者是注册)

3.VM代表控制器 主要起协调作用,负责调用模型来对数据处理,协调模型和视图之间的关系,其表现形式为Vue类的实例对象(当我们使用vue这个产品的时候,vue.js这个框架会给我们提供一个 Vue 这样的一个类,然后我们实例化该类即可得到该类的一个实例,其表现形式就是我们后端里面的Controller的实例)

哪里获取Vue?

注意:目前Vue存在1.x和2.x系列。 官网:cn.vuejs.org/ 仓库地址:github.com/vuejs/vue CDN:www.bootcdn.cn/vue/

Vue入门使用

Vue小试牛刀

案例:完成一个快递运费计算公式,分别使用原生DOM操作、jQuery操作、以及Vue操作。

  1. 传统的DOM操作完成

思路:1. 为元素绑定监听事件 2. 获取DOM元素的值 3. 自己的业务 4. DOM元素值修改

  1. 使用jQuery实现【提供丰富的DOM选择器和强大的方法】

思路:和上面的是一样,但是简化DOM元素的查找,同时提供很多有用的方法,可以减少重复性的操作。

  1. 使用Vue实现

思路: 1. 先引入Vue框架 2. 定义一个区域,交给Vue管理 3. 定义一个v-model 4. 使用{{ express }}

总结:通过三种方式对比测试,发现Vue实现方案里面没有传统的DOM操作,只需要关心数据即可,这就是程序开发本身的面貌。

概念:例如以v-开头的字符被称为:Vue的指令,就是扩展了html元素的属性

概念:{{ express }} 将表达式写在双大括号里面。一般也被称为插值表达式,然后把表达式的运算结果绑定到html上面,用来显示数据。

总结:为什么要使用前端的MVVM框架呢?

答:对于web前端页面的开发,起初传统的开发思路基本都是DOM元素选取,然后对DOM元素的属性进行操作。在使用原生的JavaScript操作的时候还需要注意兼容的考虑,这个时候我们就需要使用jQuery来解决兼容性,同时利用jQuery提供的方法可以快速的进行开发。对于以上的两种开发模式来说都是少不了DOM的操作。但是实际开发我们关注的点应该是在数据上面,而不是DOM元素的操作。

Vue之MVC

一般在前端开发里面都不叫MVC,都叫MVVM。因为C主要是负责实例化模型和视图的载入,起的是协调的作用。所有C是使用VM代替的。

Vue标准开发模式

Vue中如何声明模型数据?

模型数据的展示

  1. 基本类型数据展示
  2. 复合数据类型展示

Vue指令

  1. v-model指令
  2. v-for指令
  3. v-show指令
  4. v-if指令
  5. v-on指令
  6. v-text指令
  7. v-bind指令

Vue之双向数据绑定

  1. 模型到视图
  2. 视图到模型

Vue过滤器filter

axios

综合案例演练