个人 中小企业公司网站建设方案,东莞制作网站公司哪家好,游戏代理300元一天,网站设计技术方案文章目录 一、修饰符是什么二、修饰符的作用1.表单修饰符lazytrimnumber 2.事件修饰符stoppreventselfoncecapturepassivenative 3.鼠标按钮修饰符4.键盘修饰符5.v-bind修饰符asyncpropscamel 三、应用场景参考文献 一、修饰符是什么
在程序世界里#xff0c;修饰符是用于限定… 文章目录 一、修饰符是什么二、修饰符的作用1.表单修饰符lazytrimnumber 2.事件修饰符stoppreventselfoncecapturepassivenative 3.鼠标按钮修饰符4.键盘修饰符5.v-bind修饰符asyncpropscamel 三、应用场景参考文献 一、修饰符是什么
在程序世界里修饰符是用于限定类型以及类型成员的声明的一种符号
在Vue中修饰符处理了许多DOM事件的细节让我们不再需要花大量的时间去处理这些烦恼的事情而能有更多的精力专注于程序的逻辑处理
vue中修饰符分为以下五种
表单修饰符事件修饰符鼠标按键修饰符键值修饰符v-bind修饰符 二、修饰符的作用
1.表单修饰符
在我们填写表单的时候用得最多的是input标签指令用得最多的是v-model
关于表单的修饰符有如下
lazytrimnumber
lazy
在我们填完信息光标离开标签的时候才会将值赋予给value也就是在change事件之后再进行信息同步
input typetext v-model.lazyvalue
p{{value}}/ptrim
自动过滤用户输入的首空格字符而中间的空格不会过滤
input typetext v-model.trimvaluenumber
自动将用户的输入值转为数值类型但如果这个值无法被parseFloat解析则会返回原来的值
input v-model.numberage typenumber2.事件修饰符
事件修饰符是对事件捕获以及目标进行了处理有如下修饰符
stoppreventselfoncecapturepassivenative
stop
阻止了事件冒泡相当于调用了event.stopPropagation方法
div clickshout(2)button click.stopshout(1)ok/button
/div
//只输出1prevent
阻止了事件的默认行为相当于调用了event.preventDefault方法
form v-on:submit.preventonSubmit/formself
只当在 event.target 是当前元素自身时触发处理函数
div v-on:click.selfdoThat.../div使用修饰符时顺序很重要相应的代码会以同样的顺序产生。因此用 v-on:click.prevent.self 会阻止所有的点击而 v-on:click.self.prevent 只会阻止对元素自身的点击 once
绑定了事件以后只能触发一次第二次就不会触发
button click.onceshout(1)ok/buttoncapture
使事件触发从包含这个元素的顶层开始往下触发
div click.captureshout(1)obj1
div click.captureshout(2)obj2
div clickshout(3)obj3
div clickshout(4)obj4
/div
/div
/div
/div
// 输出结构: 1 2 4 3 passive
在移动端当我们在监听元素滚动事件的时候会一直触发onscroll事件会让我们的网页变卡因此我们使用这个修饰符的时候相当于给onscroll事件整了一个.lazy修饰符
!-- 滚动事件的默认行为 (即滚动行为) 将会立即触发 --
!-- 而不会等待 onScroll 完成 --
!-- 这其中包含 event.preventDefault() 的情况 --
div v-on:scroll.passiveonScroll.../div不要把 .passive 和 .prevent 一起使用,因为 .prevent 将会被忽略同时浏览器可能会向你展示一个警告。 passive 会告诉浏览器你不想阻止事件的默认行为 native
让组件变成像html内置标签那样监听根元素的原生事件否则组件上使用 v-on 只会监听自定义事件
my-component v-on:click.nativedoSomething/my-component3.鼠标按钮修饰符
鼠标按钮修饰符针对的就是左键、右键、中键点击有如下
left 左键点击right 右键点击middle 中键点击
button click.leftshout(1)ok/button
button click.rightshout(1)ok/button
button click.middleshout(1)ok/button4.键盘修饰符
键盘修饰符是用来修饰键盘事件onkeyuponkeydown的有如下
keyCode存在很多但vue为我们提供了别名分为以下两种
普通键enter、tab、delete、space、esc、up…系统修饰键ctrl、alt、meta、shift…
// 只有按键为keyCode的时候才触发
input typetext keyup.keyCodeshout()还可以通过以下方式自定义一些全局的键盘码别名
Vue.config.keyCodes.f2 1135.v-bind修饰符
v-bind修饰符主要是为属性进行操作用来分别有如下
asyncpropcamel
async
能对props进行一个双向绑定
//父组件
comp :myMessage.syncbar/comp
//子组件
this.$emit(update:myMessage,params);以上这种方法相当于以下的简写
//父亲组件
comp :myMessagebar update:myMessagefunc/comp
func(e){this.bar e;
}
//子组件js
func2(){this.$emit(update:myMessage,params);
}使用async需要注意以下两点 使用sync的时候子组件传递的事件名格式必须为update:value其中value必须与子组件中props中声明的名称完全一致 注意带有 .sync 修饰符的 v-bind 不能和表达式一起使用 将 v-bind.sync 用在一个字面量的对象上例如 v-bind.sync”{ title: doc.title }”是无法正常工作的
props
设置自定义标签属性避免暴露数据防止污染HTML结构
input iduid titletitle1 value1 :index.propindexcamel
将命名变为驼峰命名法如将 view-Box 属性名转换为 viewBox
svg :viewBoxviewBox/svg三、应用场景
根据每一个修饰符的功能我们可以得到以下修饰符的应用场景
.stop阻止事件冒泡.native绑定原生事件.once事件只执行一次.self 将事件绑定在自身身上相当于阻止事件冒泡.prevent阻止默认事件.caption用于事件捕获.once只触发一次.keyCode监听特定键盘按下.right右键 参考文献
https://segmentfault.com/a/1190000016786254https://vue3js.cn/docs/zh 希望本文能够对您有所帮助如果您有任何问题或建议请随时在评论区留言联系 章挨踢章IT 谢谢阅读