vue之修饰符
1 修饰符分类
· 表单修饰符---(属于v-model进阶使用)
· 事件修饰符
· 按键修饰符
· v-bind修饰符
2、表单修饰符
| 修饰符 | 作用 | 使用 | 
|---|---|---|
| lazy | 填写信息之后,光标离开标签的时候才会将值赋予给value | |
| trim | 自动过滤用户输入的首个空格字符,中间的空格不会过滤 | |
| number | 自动将用户输入的值转换为数字类型,如果不能被parseFloat解析,会返回原来的值 | 
实际代码展示:
<body>
<div id="app">
    <h1>v-model进阶</h1>
    <input type="text" v-model.lazy="name">====>{{name}}
    <br>
    <input type="text" v-model.number="name1">====>{{name1}}
    <br>
    <input type="text" v-model.trim="name2">====>{{name2}}
    <br>
</div>
</body>
<script>
    var vm = new Vue({
        el: '#app',
        data: {
            name:'',
            name1:'',
            name2:'',
        },
    })
 </script>
3 事件修饰符
| 修饰符 | 作用 | 
|---|---|
| stop | 阻止了事件冒泡 ,相当于调用了event.stopPropagation 只处理自己的事件,父控件冒泡的事件不处理(阻止事件冒泡) | 
| self | 只处理自己的事件,子控件冒泡的事件不处理 将事件绑定在自身身上,相当于阻止事件冒泡 | 
| prevent | 阻止了事件的默认行为,相当于调用了 event.preventDefault方法阻止a链接的跳转 | 
| once | 事件只会触发一次(适用于抽奖页面) | 
代码展示:
<body>
<div id="app">
    <h1>事件修饰符--stop</h1>
    <div class="top" @click="handleTop">
        <div class="inner" @click.stop="handleInner">点我</div>
    </div>
  
    <h1>事件修饰符--self</h1>
    <div class="top" @click.self="handleTop">
        <div class="inner" @click="handleInner">点我</div>
    </div>
    <h1>事件修饰符--prevent</h1>
    <a href="https://www.baidu.com" @click.prevent="handleA">点我看美女</a>
    <h1>事件修饰符--once</h1>
    <button @click.once="handleOnce">抽奖</button>
</div>
</body>
<script>
    var vm = new Vue({
        el: '#app',
        data: {},
        methods: {
            handleTop() {
                console.log('父亲')
            },
            handleInner() {
                console.log('子子')
            },
            handleA(){
                console.log('a 被点了')
                location.href='https://www.baidu.com'
            },
            handleOnce(){
                console.log('只会执行一次')
            }
        }
    })
</script>
</html>
4 按键修饰符
.enter 回车键
.delete 键
.esc 键
.space 空格键
.up 箭头上键
.dowm 箭头下键
.left 箭头左键
.right 箭头右键
.tab 键 (无法触发keyup事件,只能触发keydown事件) 
# 1 按下某个键盘,触发事件,通过修饰控制只有按下某个键,才触发事件
#2 keyCode对应表--》按键修饰符
	https://www.cnblogs.com/841019rossi/p/16808455.html
  
  特殊键
  ctrl,alt,shift,meta(也就是win标志,田)
代码展示:
<body>
<div id="app">
    <h1>按键事件</h1>
    <input type="text" v-model="name" @keyup="handleKeyUp">-->{{name}}
    <h1>按键修饰符</h1>
    <input type="text" v-model="name1" @keyup.13="handleKeyUp2">-->{{name1}}
</div>
</body>
<script>
    var vm = new Vue({
        el: '#app',
        data: {
            name: '',
            name1: '',
        },
        methods:{
            handleKeyUp(event){
                console.log('按下了:',event.key,event)
            },
            handleKeyUp2(){
                console.log('enter被按了')
            }
        }
    })
</script>
</html>
5 常见的应用场景
| 修饰符 | 应用场景 | 
|---|---|
| .stop | 阻止事件冒泡 | 
| .native | 绑定原生事件 | 
| .once | 事件只执行一次 | 
| .self | 将事件绑定在自身,相当于阻止事件冒泡 | 
| .prevent | 阻止默认事件 | 
| .caption | 用于事件捕获 | 
| .keyCode | 监听特定键盘的按下 | 
| .right | 右键 | 
本文来自博客园,作者:Unfool,转载请注明原文链接:https://www.cnblogs.com/queryH/p/18164429
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须在文章页面给出原文连接,否则保留追究法律责任的权利。

 
                
            
         
         浙公网安备 33010602011771号
浙公网安备 33010602011771号