【发布时间】:2020-05-26 13:47:33
【问题描述】:
我想用可以过滤的帖子为块设置动画。
一些过滤器触发计算方法filteredPosts,它们被分配给<block-article :posts="filteredPosts" />的组件别名
在我的 <block-article> 组件中,我有类似的东西:
<template>
<div class="posts">
<div v-for="post in posts" :key="post.id"></div>
</div>
</template>
我希望 div .posts 像翻译底部/在消失时淡出和翻译顶部/在出现时淡入一样进行动画处理。
我试过了:
<template>
<transition name="slide-fade">
<div class="posts">
<div v-for="post in posts" :key="post.id"></div>
</div>
</transition>
</template>
有相应的 css 类,但它不起作用。
我试过了:
<template>
<div class="posts">
<transition-group name="slide-fade">
<div v-for="post in posts" :key="post.id"></div>
</transition-group>
</div>
</template>
但我的班级.posts 是一个网格,在这里我失去了网格行为。
目标是动画整个 div .posts 而不是 v-for 的每个元素。
有什么想法吗?
谢谢大家,
【问题讨论】:
-
精确@StevenB。谢谢它有效,但最后这是一个问题,因为转换不会影响多个过滤器中的帖子,所以我需要为全局 div 设置动画:/
-
对不起,我刚看到你帖子的底部。如果您希望全局块一起转换,那么您需要使用
transition标签。如果您希望它在初始负载时转换,您可能需要使用<transition name="slide-fade" appear><div class="posts"></div></transition> -
Arf 它在我更改过滤器时不起作用,因此在计算过滤后的帖子时。
标签: vue.js transition