vue学习(2)关于过渡状态

vue过渡使用transition的封装组件,有4个(css)类名在  enter/leave的过渡状态中切换

1,v-enter:定义进入过渡的开始状态,在元素被插入时生效,在下一帧时移除

2,v-enter-active定义进入过渡的结束状态,在元素被插入时生效,在 transition/animation完成之后移除。

3,v-leave定义离开过渡的开始状态,在离开过渡被触发时生效,在下一帧移除。

4,v-leave-active定义离开过渡的结束状态,在离开过渡被触发时生效,在transition/animation完成之后移除。

示意图如下:

过渡状态示意图

代码如下:

javascript:

javascript:
new Vue({
    el:"#example",
    data:{
        show:true
    }
})

 

html:

html:
<div  id="example">
    <button  @click="show=!show">
        Toggle render
    </button>
    <transition>
        <p  v-if="show">hello</p>
    </transition>     
</div>

 

css:

/* 可以设置不同的进入和离开动画 */
/* 设置持续时间和动画函数 */
.slide-fade-enter-active {
    transition: all .3s ease;
}
.slide-fade-leave-active {
    transition: all .8s cubic-bezier(1.0, 0.5, 0.8, 1.0);
}
//v-leave-active定义离开过渡的结束状态,在离开过渡被触发时生效,定义了结束状态,因为我们想要得到这样的效果,在元素离开时元素是慢慢消失的,
//因此这儿定义的是离开的结束状态
//使用v-leave定义的是离开的一开始的状态,不包含动画,如果定义了,那么这个元素将会马上消失 .slide-fade-enter, .slide-fade-leave-active { transform: translateX(10px); opacity: 0; }

在上面的例子中,

.slide-fade-enter定义进入过渡的开始状态,一开始

opacity:0;

transform:translateX(10px)

经过 .slide-fade-active的时候,在transition/animation完成之后移除

v-是这些类名的前缀,当我们使用trnasition组件的时候,通过为transition定义name可以自定义  V- 前缀

例如:

<transition  name="my-transition">

则v-enter可以替换为  my-transition-enter

 

转载于:https://www.cnblogs.com/qianduangaoshou/p/6917480.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值