代码拉取完成,页面将自动刷新
同步操作将从 maasduan/vue全家桶之vue基础 强制同步,此操作会覆盖自 Fork 仓库以来所做的任何修改,且无法恢复!!!
确定后同步将在后台操作,完成时将刷新页面,请耐心等待。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<style>
.red{
color: red;
}
[v-cloak] {
display: none;
}
</style>
</head>
<body>
<h2>Vue模板语法</h2>
<div id="app" v-cloak>
<h2>事件绑定---事件修饰符</h2>
<div>{{num}}</div>
<div @click='handle0'>
<!-- 事件调用方法-->
<button v-on:click='handle1'>点击1</button>
<!-- 把下面的.stop去掉观察父元素handle0()的num不会++就是阻止了 -->
<button v-on:click.stop='handle3'>点击3</button>
<!-- 可以传递多个参数 -->
<button @click='handle2(123,456,$event)'>点击2</button>
<a href="http://www.baidu.com" v-on:click="go">百度</a>
<a href="http://www.baidu.com" v-on:click.prevent="go">百度</a>
</div>
</div>
</body>
<script src="./js/vue.js"></script>
<script>
/*
总结:
绑定函数的两种方式体现在参数传递上
1、要传递一个具体的参数要用函数调用,可以传参 默认携带事件对象
2、还可以传递事件对象 $event代表事件对象
如果事件直接绑定函数名称,默认会传递事件对象作为事件函数的第一个参数,
如果事件绑定函数调用,那么事件对象必须作为最后一个参数传递,并且事件对象的名称必须是$event
*/
var vm = new Vue({
el: '#app',
data: {
num: 0
},
methods:{
handle2:function(p,p1,event){
this.num++
console.log(this === vm) //true
console.log(p) //123
console.log(p,p1) //123 456
console.log(event)
console.log(event.target.tagName)
console.log(event.target.innerHTML)
},
handle1:function(event){
console.log(event.target.innerHTML)
//阻止冒泡
event.stopPropagation();
},
handle3:function(event){
console.log('用事件修饰符阻止事件冒泡')
},
handle0:function(){
this.num++
},
go:function(event){
//原生js方法阻止默认行为
event.preventDefault();
//vue中直接使用
}
}
})
</script>
</html>
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。