有没有一种方法可以在 vuejs 条件 v-if
和 transition
v-else
?
举个例子:
<transition name="fade">
<p v-if="show">hello</p>
<p v-else>Goodbye</p>
</transition>
new Vue({
el: '#demo',
data: {
show: true
}
})
.fade-enter-active,
.fade-leave-active {
transition: opacity .5s
}
.fade-enter,
.fade-leave-active {
opacity: 0
}
I can’t seem to get a transition
to work in such a scenario, where, as you toggle show
, the <p>
elements use a transition
他们之间。
原文由 MonkeyOnARock 发布,翻译遵循 CC BY-SA 4.0 许可协议
你的问题是因为vue transition看不到元素的变化,它只看到内容的变化。
这是因为两个元素有相同的标签名,所以 vue 只是重用了这个。为了解决这个问题,给两个元素一个不同的键值:
例子: