我有以下页面,其中包含在转换标记中的 2 个父组件。他们之间的过渡顺利进行。
Page.vue 有 2 个组件:WithdrawalRequest 和 WithdrawalConfirm
<template>
<v-container>
<div class="mx-2 mt-8">
<v-row>
<transition name="fade" mode="out-in">
<withdrawal-form
@withdrawal-request="setWithdrawalRequest"
v-if="!withdrawalRequest"
></withdrawal-form>
<withdrawal-confirm
v-else
:withdrawal-request="withdrawalRequest"
></withdrawal-confirm>
</transition>
</v-row>
</div>
</v-container>
</template>
子组件 WithdrawalConfirm 也有 2 个包装在转换中的 v-cards。
这是一个简单的例子,但它也不起作用。我真的不明白为什么第二次过渡根本不起作用。我错过了什么吗?我已经花了几个小时进行测试。
<template>
<div>
<transition name="fade" appear>
<v-card v-if="show">Card1</v-card>
<v-card v-else>Card2</v-card>
</transition>
<v-btn @click="toggle">Toggle</v-btn>
</div>
</template>
<script>
export default {
data() {
return {
show: true,
};
},
methods: {
toggle() {
this.show = !this.show;
},
},
};
</script>
<style scoped>
.fade-enter-active,
.fade-leave-active {
transition: opacity 0.5s;
}
.fade-enter,
.fade-leave-to {
opacity: 0;
}
</style>