VUE指令笔记

VUE.JS官网

https://cn.vuejs.org/

el:挂载点

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

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

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

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

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

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

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

data:数据对象

  1. Vue中用到的数据定义在data中
  2. data中可以写复杂类型的数据
  3. 渲染复杂类型数据时,遵守js的语法即可

V-text

设置标签的内容(textContent),默认写法会替换全部内容,使用差值表达式{ }可以替换指定内容

html代码:

  <div id="app">
            <h2 V-text="message+'!'"></h2>
            <h2>让我猜猜{{ message +"! "}</h2>
  </div>

js代码:

 <script>
        var app = new Vue({
            el: "#app",
            data: {
                message: "你是谁"
            }
        })
</script>

V-html

设置标签的innerHTML,将一个html语句挂上去

  1. v-html指令的作用是:设置元素的innerHTML
  2. 内容中有html结构会被解析为标签
  3. v-text指令无论内容是什么,只会解析为文本
  4. 解析文本使用v-text,需要解析html结构使用v-html

html代码

<div id="app">
    <p v-html="content"></p>
</div>

js代码

     <script>
        var app = new Vue({
            el: "#app",
            data: {
                content:"<a href='#'>一起学习</a>"
            }
        })
    </script>

V-On基础

为元素绑定事件,v-on:<=> @

  1. v-on指令的作用是:为元素绑定事件
  2. 事件名不需要写on
  3. 指令可以简写为@
  4. 绑定的方法定义在methods属性中

html代码:

    <div id="app">
            <input type="button" value="事件绑定" v-on:click="dolt">
            <input type="button" value="事件绑定" v-on:monseenter="dolt">
            <input type="button" value="事件绑定" v-on:dblclick="dolt">
            <input type="button" value="事件绑定" @dblclick="dolt">
    </div>

js代码:

<script>
    var app = new Vue({
        el: "#app",
        data: {
          
        },
         methods:{
            dolt: function() {
                //逻辑
            }
        }
    })
</script>

V- show(适用于频繁切换)

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

  1. v-show指令的作用是:根据真假切换元素的显示状态
  2. 原理是修改元素的display,实现显示隐藏
  3. 指令后面的内容,最终都会解析为布尔值
  4. 值为true元素显示,值为false元素隐藏
  5. 数据改变之后,对应元素的显示状态会同步更新

html代码:

<div id="app">
    <img src="地址” v-show="true">
    <img src="地址" v-show= "isShow">
    <img src="地址" v-show="age>=18">
</div>

js代码:

<script>
    var app = new Vue({
        el: "#app",
        data: {
            isShow: false,
            age: 16
        }
    })
</script>

V-if

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

  1. v-if指令的作用是:根据表达式的真假切换元素的显示状态
  2. 本质是通过操纵dom元素来切换显示状态
  3. 表达式的值为true,元素存在于dom树中,为false,从dom树中移除
  4. 频繁的切换v-show,反之使用v-if,前者的切换消耗小

html代码

<div id="app">
        <p v-if="true">我是一个p标签</p>
        <p v-if="isShow">我是一个p标签</p>
        <p v-if="表达式">我是一个p标签</p>
</div>

js代码:

<script>
    var app = new Vue({
        el: "#app",
        data: {
            isShow: false,
        }
    })
</script>

V-bind

设置元素的属性(此如:src,title,class),其中v-bind可以省略不写

  1. v-bind指令的作用是:为元素绑定属性
  2. 完整写法是v-bind:属性名
  3. 简写的话可以直接省略v-bind,只保留:属性名

html代码:

<div id="app">
        <img :src="imgSrc">
        <img :title="imgtitle+'!!!'">
        <img :class="isActive?' active':''>
        <img :class="{active:isActive}">
 </div>

js代码:

<script>
    var app = new Vue({
        el: "#app",
        data: {
            imgSrc: "图片地址",
            imgTitle: "猜猜看",
            isActive: false
        }
    })
</script>

V-for

根据数据生成列表结构

  1. -for指令的作用是:根据数据生成列表结构
  2. 数组经常和v-for结合使用
  3. 语法是( item,index ) in 数据
  4. item和index可以结合其他指令一起使用
  5. 数组长度的更新会同步到页面上,是响应式的

html代码

  <div id="app">
        <ul>
            <li v-for="(item,index) in arr" :title="item">
                {{ index }}{{ item }}
            </li>>
            <li v-for="(item,index) in objArr">
                {{ item.name }}
            </li>>
        </ul>
    </div>

js代码:

<script>
    var app = new Vue({
        el: "#app",
        data: {
            arr:
                [1, 2, 3, 4, 5],
            objArr: [
                { name: "jack" },
                { name: "rose" }
            ]
        }
    })
</script>

V-on补充

传递自定义参数,事件修饰符
文档传送门: https://cn.vuejs.org/v2/api/#v-on

  1. 事件绑定的方法写成函数调用的形式,可以传入自定义参数
  2. 事件修饰符有多种
  3. 事件的后面跟上.修饰符可以对事件进行限制
  4. .enter可以限制触发的按键为回车
  5. 定义方法时需要定义形参来接收传入的实参

html代码:

    <div id="app">
            <input type="button" @click=" dolt(p1,p2)" />
            <input type="text" @keyup.enter="sayHi">
    </div>

js代码:

<script>
    var app = new Vue({
        el: "#app",
        methods: {
            dolt: function (p1, p2) { },
            sayHi: function () { }
        }
    })
</script>

V- model

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

  1. v-model指令的作用是便捷的设置和获取表单元素的值
  2. 绑定的数据会和表单元素值相关联
  3. 绑定的数据<=>表单元素的值

html代码:

    <div id="app' ">
            <input type="text" v-model="message" />
    </div>

js代码:

<script>
    var app = new Vue({
        el: "#app",
        data: {
            message:
                "努力学习"
        }
    })
</script>

网络应用

Vue结合网络数据开发应用
Axios: 功能强大的网络请求库

  1. axios必须先导入才可以使用
  2. 使用ge或post方法即可发送对应的请求
  3. then方法中的回调函数会在请求成功或失败时触发
  4. 通过回调函数的形参可以获取响应内容,或错误信息

坐标:

<script src="https://unpkg.com/axios/dist/axios.min.js"></script>

语法:
axios. get(地址?key=value&key2=values).then(function(response){},function(err){})
axios.post(地址,{key:value,key2:value2}).then(function(response){},function(err){})

axios+vue

html代码:

<input type="button" value="post请求" class="post">
<div class="main">
    <input type="button" value="获取笑话" @click="getJokes"><br>
    <span>{{jokes}}</span>
</div>

js代码:

<script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
<script src="https://unpkg.com/axios/dist/axios.min.js"></script>
 <script>

        /*接口1:随机笑话
        请求地址: https://autumnfish.cn/api/jokest
        请求方法:get
        请求参数:num(笑话条数,数字)
        响应内容:随机笑话*/
        var app = new Vue({
            el: ".main",
            data: {
                jokes: "好笑的笑话"
            },
            methods: {
                getJokes: function () {
                     var that=this;
                    axios.get("https://autumnfish.cn/api/joke")
                        .then(res => {
                            that.jokes=res.data;
                        })
                        .catch(err => {
                            console.error(err);
                        })
                }
            },

        })
    </script>

注意:

  1. axios回调函数中的this已经改变无法访问到data中数据
  2. 把this保存起来,回调函数中直接使用保存的this即可
  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 尚硅谷的Vue2笔记是学习Vue技术的好帮手。这份笔记详细地介绍了Vue的基本概念和使用方法,包括Vue的属性、指令、事件、计算属性、过滤器、组件等等。通过阅读这份笔记,我们可以了解Vue的整个生命周期,并且学习如何在Vue中绑定数据、响应事件、使用组件化等等。另外,笔记中也提到了Vue的MVVM模式、路由、状态管理、Ajax等进阶使用方法,以及Vue的一些注意点和优化技巧,这些非常实用且有助于深入学习和应用Vue技术。 总体来说,尚硅谷的Vue2笔记内容丰富、清晰易懂,适合初学者和中级开发者使用,是学习Vue技术的一份不错资料。需要注意的是,笔记中的代码及部分内容可能存在过时和不准确的情况,需要和Vue官方文档及其他权威资料进行比较和验证。 ### 回答2: 尚硅谷的Vue2笔记是一份非常全面和深入的Vue学习资料,它涵盖了Vue框架的基本概念和重要特性,包括Vue的组件化开发、指令、路由、Vuex状态管理、axios网络请求等。该笔记不仅注重理论知识的讲解,而且注重实战应用。它提供了大量的示例代码和练习项目,帮助学习者理解和掌握Vue的核心概念和技术。 在Vue2笔记中,作者从Vue的基本概念和MVVM架构模式开始讲解,然后逐步深入介绍了Vue的各种特性和用法,如组件、生命周期、计算属性、watch、事件处理、槽位、指令等等。特别是在组件化开发方面,作者详细介绍了组件之间的通信方式、props和$emit的使用、slot插槽的应用等等,这些都是Vue组件化开发中非常重要的概念。 除了组件化开发之外,Vue2笔记还详细介绍了Vue的路由、状态管理和网络请求等其他关键特性。在路由方面,作者讲解了Vue-Router的基本使用和路由守卫的应用,让学习者能够掌握Vue应用的页面导航和权限控制。在状态管理方面,作者讲解了Vuex的设计思想和使用方法,使学习者能够在复杂的应用中更好地管理和共享状态。在网络请求方面,作者介绍了axios库的使用和封装方法,帮助学习者更好地理解Vue应用中的数据请求和展示。 总的来说,尚硅谷Vue2笔记对于学习Vue框架的人来说是一份非常优秀的教材。它详细介绍了Vue的各个方面,并提供了丰富的练习项目,帮助学习者更好地掌握Vue的核心技术和应用。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值