Vue 提供了 transition 的封装组件,在条件渲染 (使用 v-if),条件展现 (使用 v-show)等状况下能够给任何元素和组件添加进入/离开过渡javascript
<template lang="pug"> .wrap. transition(name="fade") item-picker( v-if="showDuration" title="持续天数" :columns="duration" @cancel="cancel" @confirm="confirm" ) </template>
<style scoped lang="less"> .fade-enter-active, .fade-leave-active { transition: opacity .3s; } .fade-enter, .fade-leave-to { opacity: 0; } </style>
CSS 动画用法同 CSS 过渡css
<transition name="bounce"> <p v-if="show">Lorem ipsum dolor sit amet.</p> </transition>
.bounce-enter-active { animation: bounce-in .5s; } .bounce-leave-active { animation: bounce-in .5s reverse; } @keyframes bounce-in { 0% { transform: scale(0); } 50% { transform: scale(1.5); } 100% { transform: scale(1); } }