vue01-指令-事件修饰符-过滤器-值改变页面检测

1.指令

v-cloack:当vue.js没有被加载时,v-cloak会被识别成普通的自定义属性,让我们添加了该元素的元素display:none即可一旦vue。js加载完毕,v-cloak就会被识别成vue的指定,会自动取出之前的效果
v-class:
语法:
:class=‘class名’
:class=‘{class名:true}’
:class=‘{class名:是否表达式}’
在data中设置class名:true
v-style:不可设置是否,但是可以在data中描述
v-href
v-html,v-text

v-for:
对象:v-for(val,key,index)数组:v-for(val,index)
v-if,v-else,v-else-if,
v-show,v-if
v-on,v-keydown,v-mousedoun,v-contextmenu**
a.传参必须加()
b.若没加(),默认第一个形参为事件对象event
c.加(),需要通过传入$event获取事件对象

2.事件修饰符

@事件名.修饰符1.修饰符2.修饰符3.=‘’
普通事件修饰符:阻止冒泡stop,阻止默认事件prevent,一次性事件once
键盘事件修饰符:left,right,up,down,up,enter…
鼠标事件:left,right,middle

<div @contextmenu="oneEvent" id="one">
<div @contextmenu.stop.prevent.once="twoEvent"  id="two">啦啦啦</div>
</div>
<!--键盘修饰符:只有按下space,left,right,w键才会执行(ctrl,shift无作用)-->
<input @keydown.space.left.right.w="threeEvent"></input>
<!--鼠标修饰符:只有按下鼠标右键才会执行。不可以组合用,只可以设置一个-->
<div @mousedown.right="fourEvent"></div>

3.过滤器

{{需要处理的变量|过滤器名(参数1,参数2…)}}
实例…filter(‘过滤器名’,function(val,参数1,参数2){
return 过滤后的结果
})

 <h1>{{123.533|currency(['我的支付宝里还剩','元'],2)}}</h1>
Vue.filter('currency',function (value,str,n) {
        return str[0]+value.toFixed(n)+str[1];
    })

4.数组和对象的检测(修改data中的值)

  1. 数组:
    push向末尾添加一个 pop删除末尾
    unshift 在首部添加 shift删除首个
    splice添加 sort排序 reverse颠倒--------------这些方法改变原数组
    join concat map slice filter-------------不改变原数组,页面不更新。
    直接修改数组中的元素,页面不更新。
    a.重新覆盖数组
    b.Vue.set(数组,下标,新值)
    c.vue实例.$set(数组,下标,新值)
  2. 对象
    新增属性,不可更新
    解决方法:
    a.Vue.set(对象,新key,新val)
    b.vue实例.$set(对象,新key,新值val)
    c.原对象=Object.assign({},对象,新增键值对对象)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值