Vue学习笔记


Vue学习笔记

一、环境搭建

1、安装VS code

2、安装live server

3、安装科学上网工具

4、安装谷歌浏览器

5、安装Vue浏览器调试工具

二、安装Vue(两种版本)

1、导入开发版本的Vue.js

2、创建Vue实例对象,设置el属性和data属性

3、使用简洁的模板语法把数据渲染到页面上

    

        {{ message }}

    

三、el挂载点

el挂载点的作用是什么?

el是用来设置Vue实例挂载(管理)的元素

Vue实例的作用范围是什么?

Vue会管理el选项命中元素及其内部的后代元素

是否可以使用其他的选择器?

可以使用其他的选择器,但是建议使用ID选择器

是否可以设置其他的dom元素呢?

可以使用其他的双标签,不能使用HTML和BODY

四、data: 数据对象

Vue中用到的数据定义在data中

data中可以写复杂类型数据

渲染复杂类型数据时,遵守js的语法即可

   

        {{ message }}

        

{{ school.name }}  {{ school.mobile }}

        

                

  • {{ campus[0] }}
  •             

  • {{ campus[1] }}
  •             

  • {{ campus[2] }}
  •         

     

 

    

Hello Vue!

许多 19800000000

北京

上海

深圳

五、指令

1、内容绑定,事件绑定

v-text   v-html   v-on基础

2、显示切换,属性绑定

v-show   v-if   v-bind

3、列表循环,表单元素绑定

v-for    v-on补充   v-model

v-text  设置标签的文本值(textContent)

    

        北京

        上海

        

{{message + "?"}}上海

    

    

    

Hello Word!!!!

hahaha

Hello Word!!!!?上海

v-html 设置标签的innerHTML

    

        

        

    

 

    

hao123

hao123

v-on基础 为元素绑定事件

    

        

        

        

        {{ food }}

    

 

     

1、v-on指令的作用是:微元素绑定事件

2、事件名称不需要写on

3、指令可以简写为@

4、绑定的方法定义在methods属性中

计数器案例

    

        

            -

        

         {{ num }}

        

            +

        

    

 

    

创建Vue示例时:el(挂载点),data(数据),methods(方法)

v-on指令的作用是绑定事件,简写为@

方法中通过this,关键字获取data中的数据

v-text指令的作用是:设置元素的文本值,简写为{{}}

v-show 根据表达值的真假,切换元素的显示和隐藏

    

        

        

        

        =18" src="https://www.baidu.com/img/PCtm_d9c8750bed0b3c7d089fa7d55720d6cf.png" alt="">

    

    

    

1、v-show指令的作用是:根据真假切换元素的显示状态

2、原理是修改元素的display,实现显示隐藏

3、指令后面的内容,最终都会解析为布尔值

4、值为true元素显示,值为false元素隐藏

5、数据改变时,会同步更新

v-if 根据表达值的真假,切换元素的显示和隐藏(操纵dom元素)

    

        

        Hello Word v-if

        Hello Word v-show

        =35">惹

    

    

    

1、v-if指令的作用是:根据表达式的真假切换元素的显示状态

2、本质是通过操纵dom元素来切换元素的显示状态

3、表达式的值为true,元素存在于dom树中,为false,从dom树中移除

4、频繁的切换v-show,反之使用v-if,前者的切换消耗小

v-bind设置元素的属性(比如:src,title,class)

    

    

    

    v-bind

    

    

        

        

        

        

        

    

    

    

1、v-bind指令的作用是:为元素绑定属性

2、完整写法是v-bind:属性名

3、简写的话可以直接省略v-bind,只保留:属性名

图片切换

    

    

    

    v-bind

    

        

        

        

    

    

    

1、列表数据使用数组保存

2、v-bind指令可以设置元素属性,比如src

3、v-show和v-if都可以切换元素的显示状态,频繁切换使用v-show

v-for 根据数据生成列表结构

    

    

    

    v-for

    

        

        

        

        

            {{ item.name}}

        

    

    

    

1、v-for指令的作用是:根据数据生成列表结构

2、数据经常和v-for结合使用

3、语法是(item,index) in 数据

4、Item和index可以结合其他指令一起使用

5、数组长度的更新会同步到页面上,是响应式的

v-on补充 传递自定义参数,事件修饰符

    

    

    

    v-on补充

    

        

        

    

    

    

1、事件绑定的方法写成函数调用的形式,可以传入自定义参数

2、定义方法时需要定义形参来接受传入的实参

3、事件的后面跟上.修饰符可以对事件进行限制

4、.enter可以限制出发的案件为回车

v-model 获取和设置表单元素的值(双向数据绑定)

    

    

    

    v-model

    

        

        

        

    

 

    

1、v-model指令的作用是便捷的设置和获取表单元素的值

2、绑定的数据会和表单元素值相关联

3、绑定的数据←→表单元素的值

本地应用:记事本案例

    

    

    

    v-model

    

     

        

        

            

记事本

            

        

        

        

            

                

                    

                        {{index+1}}.

                        

                        

                    

                

            

        

        

        

             {{ list.length }}  items left

            clear

        

    

    

    

    

    

    

一、新增

1.生成列表结构(v-for数组)

2.获取用户数据(v-model)

3.回车,新增数据(v-on  .enter 添加数据)

二、删除

1.点击删除指定内容(v-on splice 索引)

2.数据改变,和数据绑定的元素同步改变

3.事件的自定义参数

4.splice的使用方法

三、统计

1.统计信息个数(v-text length)

2.基于数据的开发方式

四、清空

1.点击清除所有信息(v-on 清空数组)

2.基于数据的开发方式

五、隐藏

1.没有数据时,隐藏元素(v-show v-if 数据非空)

重点内容:

1、列表结构可以通过v-for指令结合数据生成

2、v-on结合事件修饰符可以对事件进行限制,比如.enter

3、v-on在绑定事件时可以传递自定义参数

4、通过v-model可以快速设置和获取表单元素的值

5、基于数据的开发方式


网络应用(天气预报案例)

Vue结合网络数据开发应用

axios 网络请求库

Axios+vue 结合vue一起

Axios 功能强大的网络请求库

Axios基本使用

    

    

    

    axios基本使用

    

    


    

    

    

1、axios必须先导入才可以使用

2、使用get或post方法即可发送对应的请求

3、then方法中的回掉函数会在请求成功或失败时触发

4、通过回掉函数的形参可以获取相应内容,或错误信息

文档传送门:https://github.com/axios/axios


Axios+vue axios如何结合vue开发网络应用

    

    

    

    axios基本使用

    

        

        

{{joke}}

    

    

    

    

1、axios回调函数中的this已经改变,无法访问到data中的数据

2、把this保存起来,毁掉函数中直接使用保存的this即可

3、和本地应用的最大区别就是改变了数据来源

查询天气的应用

1、回车查询

(1)按下回车(v-on .enter)

(2)查询数据(axios接口v-model)

(3)渲染数据(v-for数组that)

接口:

请求地址:https://wthrcdn.etouch.cn/weather_mini

请求方法:get

请求参数:city(查询的城市名)

响应内容:天气内容

CTRL+F  CTRL+V

  // 接口1:天气

        // 请求地址:https://wthrcdn.etouch.cn/weather_mini

        // 请求方法:get

        // 请求参数:city(查询的城市名)

        // 响应内容:天气内容

        // 1点击回车

        // 2查询数据

        // 3渲染数据

结构:

    

    

    

    天气

    

        

            

            

                

                

                    搜索

                

            

            

                北京

                上海

                广州

                深圳

              

        

        

            

                {{ item.type}}

                

                    {{item.low}}

                    ~

                    {{item.high}}

                

                {{item.date}}

            

        

    

    

    

    

main.js

        var app = new Vue({

            el:"#app",

            data:{

                city:'',

                weatherList:[]

            },

            methods:{

                searchWeather:function(){

                    var that = this;

                    axios.get('http://wthrcdn.etouch.cn/weather_mini?city='+this.city )

                    .then(function(response){

                        console.log(response.data.data.forecast);

                        that.weatherList = response.data.data.forecast

                    })

                    .catch(function(err){})

                }

            },

        })


综合应用(悦听播放器)

1、歌曲搜索

(1)按下回车(v-on .enter)

(2)查询数据(axios 接口 v-model)

(3)渲染数据(v-for 数组 that)

(4)请求地址:https://autumnfish.cn/search

(5)请求方法:get

(6)请求参数:keywords(查询的关键字)

(7)响应内容:歌曲搜索结果

2、歌曲播放

(1)点击播放(v-on)

(2)歌曲地址获取

(3)歌曲地址获取

(4)请求地址https://autumnfish.cn/song/url

(5)请求方法:get

(6)请求参数:id:(歌曲id)

(7)响应内容:歌曲的url地址

3、歌曲封面

(1)点击播放(增加逻辑)

(2)歌曲封面获取(接口 歌曲id)

(3)歌曲封面设置(v-bind)

(4)请求地址:https://autumnfish.cn/song/detail

(5)请求方法:get

(6)请求参数:ids(歌曲id)

(7)相应内容:歌曲详情,包含封面信息

4、歌曲评论

(1)点击播放(增加逻辑)

(2)歌曲评论获取(接口 歌曲id)

(3)歌曲评论渲染

(4)请求地址:https://autumnfish.cn/comment/hot?type=0

(5)请求方法:get

(6)请求参数:id(歌曲id,type固定为0)

(7)相应内容:歌曲的热门评论

5、播放动画

(1)监听音乐播放(v-on play)

(2)监听音乐暂停(v-on pause)

(3)操纵类名(v-bind 对象)

6、MV播放

(1)mv图标显示(v-if)

(2)Mv地址获取(接口 mvid)

(3)遮罩层(v-show v-on)

(4)Mv地址获取(v-bind)

(5)请求地址:https://autumnfish.cn/mv//url

(6)请求参数:id(mvid,为0说明没有mv)

你可能感兴趣的:(Vue学习笔记)