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">
相关推荐
遂心_10 小时前
为什么 '1'.toString() 可以调用?深入理解 JavaScript 包装对象机制
前端·javascript
IT_陈寒10 小时前
JavaScript 性能优化:5 个被低估的 V8 引擎技巧让你的代码快 200%
前端·人工智能·后端
王同学QaQ10 小时前
Vue3对接UE,通过MQTT完成通讯
javascript·vue.js
岛风风10 小时前
关于手机的设备信息
前端
ReturnTrue86810 小时前
nginx性能优化之Gzip
前端
华仔啊10 小时前
基于 RuoYi-Vue 轻松实现单用户登录功能,亲测有效
java·vue.js·后端
程序员鱼皮11 小时前
刚刚 Java 25 炸裂发布!让 Java 再次伟大
java·javascript·计算机·程序员·编程·开发·代码
w_y_fan11 小时前
Flutter 滚动组件总结
前端·flutter
wuli金居哇11 小时前
我用 Turborepo 搭了个 Monorepo 脚手架,开发体验直接起飞!
前端
Asort11 小时前
JavaScript 从零开始(五):运算符和表达式——从零开始掌握算术、比较与逻辑运算
前端·javascript