31 lines
737 B
Vue
31 lines
737 B
Vue
<template>
|
|
<div class="aa-pt">
|
|
<div class="aa-pt-bar">
|
|
<button class="aa-btn" @click="trigger('fade')">淡入</button>
|
|
<button class="aa-btn" @click="trigger('slide')">滑动</button>
|
|
<button class="aa-btn" @click="trigger('zoom')">缩放</button>
|
|
</div>
|
|
<div class="aa-pt-stage" :class="animClass" :key="token">{{ text }}</div>
|
|
</div>
|
|
</template>
|
|
|
|
<script>
|
|
export default {
|
|
name: 'AaPageTransition',
|
|
props: {
|
|
text: { type: String, default: '当前页面内容' }
|
|
},
|
|
data() {
|
|
return { animClass: 'aa-pt-fade', token: 0 };
|
|
},
|
|
methods: {
|
|
trigger(type) {
|
|
this.animClass = 'aa-pt-' + type;
|
|
this.token++;
|
|
}
|
|
}
|
|
};
|
|
</script>
|
|
|
|
<style src="./PageTransition.css"></style>
|