vue的常用修饰符

概念

在vue中,修饰符将各种dom事件的细节进行封装,使我们在vue开发中更便捷。常见的有表单类的修饰符、事件类的修饰符等

表单修饰符

  • .lazy - input框的v-model每次在input事件改变后更新数据,使用lazy可以在每次change时候刷新数据
  • .trim - input文本自动去除前后空格
  • .number - input文本转换成数值类型
html 复制代码
<input type="text" v-model.number="age"/>
<input type="text" v-model.trim="searchText"/>

事件修饰符

  • .stop:防止事件冒泡,和js的event.stopPropagation() 效果一致
  • .prevent :防止默认的行为,和js的 event.preventDefault() 效果一致(如果事件可取消,则取消该事件,而不停止事件的进一步传播)
  • .capture - 与事件冒泡的方向相反,事件捕获由外到内
  • .self - 只会触发自己范围内的事件,不包含子元素。即event.target本身
  • .once - 只会触发一次
  • .passive - 在移动端监听页面滚动事件的时候,会一直触发onscroll事件导致网页变卡,加上了passive相当于给onscroll使用了lazy懒加载
  • .native - 让组件变成像html内置标签那样,可以监听元素的原生事件
html 复制代码
<el-card @click.native="handleClick"></el-card>
<div @click.stop="edit()"></div>

鼠标按钮修饰符

针对鼠标的按键,只有3个。

  • .left - 左键点击
  • .right - 右键点击
  • .middle - 中间键点击
html 复制代码
<div @click.left="add()"></div>

键盘按键修饰符

主要是用来修饰键盘事件onkeyup、onkeydown的。

  • .keyCode - keyCode包含的按键,包含(enter、tab、delete、space、esc、up、ctrl、alt、meta、shift...)
html 复制代码
// 只有按键为keyCode的时候才触发 
<input type="text" @keyup.keyCode="send()">

v-bind属性修饰符

  • .sync - 对props进行双向绑定,简化了子组件修改父组件参数的方法
  • .prop - 设置自定义的属性,避免暴露数据,污染html结构
html 复制代码
// 父组件
<comp :dialogVisible.sync="dgVisible"></comp> 
// 子组件直接修改父组件的属性
this.$emit('update:dialogVisible', false);

// 自定义属性index
<input value="10" :index.prop="index">
相关推荐
命运之光1 小时前
【最新】ChromeDriver最新版本下载安装教程,ChromeDriver版本与Chrome不匹配问题
前端·chrome
星离~3 小时前
Vue响应式原理详解:从零实现一个迷你Vue
前端·javascript·vue.js
梦6503 小时前
React 简介
前端·react.js·前端框架
一只小阿乐3 小时前
react 中的判断显示
前端·javascript·vue.js·react.js·react
光影少年3 小时前
useMemo 和 React.memo区别
前端·react.js·前端框架
小沐°3 小时前
React-页码组件
前端·javascript·react.js
消失的旧时光-19433 小时前
Flutter 与 React/Vue 为什么思想一致?——声明式 UI 体系的深度对比(超清晰版)
vue.js·flutter·react.js
零一科技3 小时前
Vue3学习第三课: ref 与 reactive 选择指南
前端·vue.js
余杭子曰4 小时前
播放状态与播放序列的关系(999篇一线博客第107篇)
前端