v-on和v-bind的区别深度解析

1 篇文章 0 订阅
本文深入探讨了Vue.js中v-on和v-bind指令的区别。v-bind主要用于数据绑定,如绑定DOM元素的属性,如href、src和class等。通过v-bind,我们可以动态地更新元素的属性值,实现数据与视图的同步。当属性值为对象时,如类名绑定,可以根据条件动态添加或移除。简写的语法`:属性名`在日常开发中广泛使用。
摘要由CSDN通过智能技术生成

v-bind指令

You may have an infinite update loop in a component render function.

(found in )

这里学习vue报错了
百度找了一下 简单看了看
豁然开朗啊

image

HTML DOM 属性 对象

HTML DOM 事件

v-bind用于绑定数据和元素属性
例如:绑定a标签的href属性

<div class="app">
    <a v-bind:href="url">click me</a>
</div>  
var app = new Vue({
    el:'.app',
    data:{
        url:"https://www.baidu.com",
    }
});

以上代码中,使用v-bind绑定了a标签的href属性,当a标签被点击时,会根据对应vue中的对应的url数据进行跳转到https://www.baidu.com
不光是href属性可以被v-bind指令绑定,任何属性都可以被绑定
例如,绑定src属性、class属性

<div class="app">
    <a v-bind:href="url" v-bind:class="klass">click me</a>
    <img v-bind:src="imgsrc">
</div>  
var app = new Vue({
    el:'.app',
    data:{
        url:"https://www.baidu.com",
        imgsrc:"https://cn.vuejs.org/images/logo.png",
        kclass:"btn btn-default"
    }
});

上述代码中,同时绑定了a标签的href属性和class属性,以及img标签的src属性,其数据分别对应data里中的数据
也许你会奇怪,为什么它会知道a标签的href值url对应的就是data中的url?这其实就是vue背后的一种默认机制,它就是知道。但需要注意他们的名字得对应

用v-bind的绑定的属性的值也可以是一个对象,例如:

<div class="app">
    <a v-bind:class="{active:isActive}">click me</a>
</div>  

以上代码,active表示要添加的类名,isActive对应vue中的数据,表示在什么情况下添加该类名,对应isActive为真才添加active类

由于使用频繁,通常将v-bind:属性名=" “的格式简写成:属性名=” "

<div class="app">
    <a :class="{active:isActive}">click me</a>
</div>  
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值