Javascript VueJS-过渡组正在为组件列表的初始渲染设置动画,即使;出现;道具是假的

Javascript VueJS-过渡组正在为组件列表的初始渲染设置动画,即使;出现;道具是假的,javascript,vue.js,vuejs2,vue-component,Javascript,Vue.js,Vuejs2,Vue Component,我在过渡小组中遇到了一种奇怪的行为 我有一个css转换: .slide-fade-pop-enter-active { transition: all .4s ease-out; } .slide-fade-pop-enter { background-color: $color-yellow-light; transform: translateY(3px); opacity: 0; } 我有一个Cart组件和CartItem子组件。 在购物车内我有购物车项目如下: <

我在过渡小组中遇到了一种奇怪的行为

我有一个css转换:

.slide-fade-pop-enter-active {
  transition: all .4s ease-out;
}

.slide-fade-pop-enter {
  background-color: $color-yellow-light;
  transform: translateY(3px);
  opacity: 0;
}
我有一个Cart组件和CartItem子组件。 在购物车内我有购物车项目如下:

<transition-group name="slide-fade-pop" tag="ul" class="cart__content">
    <cart-item v-for="(item, index) in items"
               :key="index">
    </cart-item>
</transition-group>

这会触发初始渲染动画,尽管如您所见,我没有使用“出现”属性/道具,正如文档所述,它会触发初始渲染动画

当我为一个简单的li(实际上是CartItem)切换CartItem组件时,如下所示:

<transition-group name="slide-fade-pop" tag="ul" class="cart__content">
    <li v-for="(item, index) in items"
               :key="index">
    </li>
</transition-group>

  • 转换的行为符合预期。没有初始渲染,后续添加到列表中的内容将设置动画


    这是一个错误还是一个功能,而我的子组件缺少了一些东西?

    你找到了解决这个问题的方法吗?@Craig no.刚刚结束了一个隐藏消息的加载屏幕。解决方法是在过渡组中添加一个
    v-if=“items.length”
    ,但仍然感觉我缺少了一些东西。