Vue.js:事件修飾符stop,once,prevent的使用

學習Vue.js第二天

vue.js官方事件修飾符介紹地址:輕輕的點摸我就可以跳過去了哦
我是接着上一篇博客寫的:地址在這

.stop : 阻止冒泡事件

<div id="view" v-on:mousemove=" updateXY ">{{x}},{{y}} -- <span v-on:mousemove.stop>停止</span></div>

效果如下圖,根據鼠標位置顯示x,y軸,當我們移動綁定了stop的停止span上xy軸便不動了
在這裏插入圖片描述
.once: 點擊事件將只會觸發一次

<button v-on:click.once="{{age++}}">單擊大一歲</button>

代碼只會被觸發一次有效,之後都不會執行,我第一次單擊加了一歲之後不會再加了效果如下圖
在這裏插入圖片描述
.prevent:提交事件不再重載頁面

<a v-bind:href="blog" v-on:click.prevent="alert()">博客鏈接</a>

如下圖我沒加.prevent之前單擊鏈接彈出提示框然後跳到鏈接指定頁面,加上.prevent後就不會跳過去了。
在這裏插入圖片描述
全部代碼如下

<!DOCTYPE html>
<html>

	<head>
		<meta charset="utf-8" />
		<title>Vue.js</title>
		<script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
		<style>
			#view {
				width: 500px;
				padding: 100px 20px;
				border: solid 1px lightsalmon;
				text-align: center;
			}
		</style>
	</head>

	<body>
		<div id="dcf">
			<!--{{}}起來的方法需要在方法後面加(),用""起來的可以不用-->
			<h1>{{monster()}}</h1>
			<!--直接{{}}裏面放data裏的屬性就可以顯示值了-->
			<p>我叫{{name}},今年{{age}}歲。</p>
			<!--單擊事件-->
			<button v-on:click.once="{{age++}}">單擊大一歲</button>
			<!--雙擊事件-->
			<button v-on:dblclick="{{age++}}">雙擊大一歲</button></br></br>
			<!--如果直接href="blog"是不行的,F12也看見我們的鏈接顯示的是href="blog"而不是href="https://blog.csdn.net/qq_42259469"-->
			<a v-bind:href="blog" v-on:click.prevent="alert()">博客鏈接</a>
			<!--鼠標事件,顯示鼠標的X,Y軸-->
			<div id="view" v-on:mousemove=" updateXY ">{{x}},{{y}} -- <span v-on:mousemove.stop>停止</span></div>
			<!--嵌入b標籤加粗-->
			<p v-html="Record ">{{time}}</p>
		</div>
	</body>
	<script>
		new Vue({
			el: '#dcf',
			data: {
				name: 'Old Monster',
				age: '22',
				blog: 'https://blog.csdn.net/qq_42259469',
				Record: '<b>記錄於2019</b>',
				x: 0,
				y: 0
			},
			methods: { //可以放多個方法
				monster: function() {
					return 'hello,Vue.js!!!';
				},
				updateXY: function(event) {
					this.x = event.offsetX; //獲取鼠標X軸
					this.y = event.offsetY; //獲取鼠標Y軸
				},
				alert: function(){
					alert("即將跳轉到Old Monster的博客主頁!");
				}
			}
		});
	</script>

</html>
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章