zoukankan      html  css  js  c++  java
  • 事件修饰符


    categories:

    • vue基础
      tags:
    • 事件修饰符
    • 按键修饰符

    事件修饰符

    实际上,使用 v-on 有几个好处:

    1. 扫一眼 HTML 模板便能轻松定位在 JavaScript 代码里对应的方法。
    2. 因为你无须在 JavaScript 里手动绑定事件,你的 ViewModel 代码可以是非常纯粹的逻辑,和 DOM 完全解耦,更易于测试。
    3. 当一个 ViewModel 被销毁时,所有的事件处理器都会自动被删除。你无须担心如何清理它们。
    <!DOCTYPE html>
    <html lang="en">
    <head>
    	<meta charset="UTF-8">
    	<title>v-on事件修饰符</title>
    	<style>
    
    	</style>
    </head>
    <body>
        <div id="app">
        	<div>阻止单击事件继续传播</div>
        	<!-- 阻止单击事件继续传播 -->
    		<input type="text" v-on:click.stop="handlerClick">
    		<hr>
    
        	<div>提交事件不再重载页面</div>
        	<!-- 提交事件不再重载页面 -->
    		<button type="submit" v-on:click.prevent="handlerPrevent">点击提交</button>
    		<hr>
    
        	<div>修饰符可以串联</div>
        	<!-- 修饰符可以串联 -->
    		<button type="submit" v-on:click.stop.prevent="handlerClickPrevent">修饰符可以串联</button>
    		<hr>
    		<div>点击事件将只会触发一次</div>
        	<!-- 点击事件将只会触发一次 -->
    		<button v-on:click.once="handlerOnce">点击事件将只会触发一次</button>
    		<hr>
        </div>
        
        <!-- 1. 引包-->
    	<script src="./vue.js"></script>
    	<script>
            // 2.初始化
            const vm = new Vue({
                el: '#app',
                // 数据属性
                data: {
    
                },
                methods:{
                	handlerClick(){
                		console.log("阻止单击事件继续传播");
                	},
                	handlerPrevent(){
                		console.log("提交事件不再重载页面");
                	},
    				handlerClickPrevent(){
    					console.log('修饰符可以串联');
    				},
    				handlerOnce(){
    					console.log('点击事件将只会触发一次');
    				}
                }
    
            })
    
    	</script>
    </body>
    </html>
    

    按键修饰符

    <!DOCTYPE html>
    <html lang="en">
    <head>
    	<meta charset="UTF-8">
    	<title>v-on按键修饰符</title>
    	<style>
    
    	</style>
    </head>
    <body>
        <div id="app">
        	<div>阻止单击事件继续传播</div>
        	<!-- 阻止单击事件继续传播 -->
    		<input type="text" v-on:keyup.up="keyup"  v-on:keyup.down="keydown">
    		<hr>
    
    
        </div>
        
        <!-- 1. 引包-->
    	<script src="./vue.js"></script>
    	<script>
            // 2.初始化
            const vm = new Vue({
                el: '#app',
                // 数据属性
                data: {
    
                },
                methods:{
                	keyup(){
                		console.log('up');
                	},
                	keydown(){
                		console.log('keydown');
                	}
                }
    
            })
    
    	</script>
    </body>
    </html>
    
  • 相关阅读:
    在ASP.NET 5中使用SignalR
    直传文件到Azure Storage的Blob服务中
    利用IdentityServer3在ASP.NET 5和Angular中实现OAuth2 Implicit Flow
    【IDEA】如何设置代码超出长度限制时自动换行
    【IEDA】Typo: In woed 'xxx' more...(Ctrl + F1) 拼写检查
    【IDEA】URI is not registered (Settings | Languages & Frameworks | Schemas and DTDs
    【IDEA】创建的 maven 项目,右键 New --> XML Configuration File 时,无 Spring Config 选项
    RHEL8网络配置
    Python GUI界面编程-初识
    Deepin系统中如何安装Visual Studio Code
  • 原文地址:https://www.cnblogs.com/anyux/p/12202107.html
Copyright © 2011-2022 走看看