Vue:v-on、v-bind、v-model用法

1、v-on:用于绑定HTML事件 :

一般v-on:click 可以缩写为 @click,其中@代表v-on:

示例:例如我们在HTML的body中加入一个绑定了事件的button

<div id="app">
  <button v-on:click="onClick">点击这里</button>
</div>

在js的methods中加入一个onClick事件:

var app = new Vue({
el : '#app',
methods : {
  onClick : function(){
    console.log("clicked");
  }
}
})

也可以绑定多个事件,但是注意在用对象同时绑定多个事件时,不能用@代替v-on:

<button v-on='{mouseenter:onEnter,mouseleave:onOut}' v-on:click="onClick">点击这里</button>

上面我们通过对象的方式绑定多个事件,对象中的键是事件的名称 值是methods中的成员属性方法:

methods : {
  onClick : function(){
    console.log("clicked");
  },
  onEnter : function(){
    console.log("mouseenter");
  },
  onOut : function(){
    console.log("mouseout");
  }
}

2、v-bind:用于设置HTML属性:

一般v-bind:href  缩写为 :href

例如:

<a v-bind:href="{{url}}">aa</a>

可以写成下面这种形式 

<a :href="{{url}}">aa</a>

 多标签的页面也可以使用is特性来切换不同的组件,例如:

<component v-bind:is="currentTabComponent"></component>

详细用法可以参考文档:https://www.cnblogs.com/liuchuanfeng/p/6742631.html

3、v-model:在表单控件元素上创建双向数据绑定:

所谓双向绑定,指的就是我们在js中的vue实例中的data与其渲染的dom元素上的内容保持一致,两者无论谁被改变,另一方也会相应的更新为相同的数据。最基础的就是实现一个联动的效果:

<body>
    <div class="app">
        <input type="checkbox" id="jack" value="jack" v-model="checkedNames">
        <label for="jack">jack</label>
        <input type="checkbox" id="John" value="John"  v-model="checkedNames">
        <label for="jack">John</label>
        <input type="checkbox" id="Mike" value="Mike"  v-model="checkedNames">
        <label for="jack">Mike</label>
        <br>
        <span>Checked names:{{checkedNames}}</span>
    </div>
    
</body>
<script>
   new Vue({
         el:'.app',
         data:{
             checkedNames:[]
         }
   })
</script>

我们要注意的是,

<input v-model="message"> 等价于 <input v-bind:value="message" v-on:input="message = $event.target.value" />

  • 3
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值