javascript - 过渡组vue中的过渡效果在列表项的值更改时生效
问题描述
有没有什么方法可以在转换组项中产生转换效果,以便在列表项中的值发生变化时产生转换效果?下面是我希望span标签在item.status发生变化时有过渡效果的示例代码。在示例代码下方。
<div id="list-demo">
<transition-group name="list" tag="p">
<div
v-for="(item,index) in items"
v-bind:key="index"
class="list-item"
@click="changeStatus(item)"
>
Click Me
<span v-if="item.status==='loading'">Loading...</span>
<span v-if="item.status==='done'">Done...</span>
</div>
</transition-group>
</div>
脚本
new Vue({
el: '#list-demo',
data: {
items: [
{ value: 1, status: 'open' },
{ value: 2, status: 'open' }
],
nextNum: 10
},
methods: {
changeStatus(item) {
item.status = 'loading'
setTimeout(() => {
item.status = 'done'
}, 2000
)
}
}
})
风格
.list-item {
display: inline-block;
margin-right: 10px;
}
.list-enter-active, .list-leave-active {
transition: all 1s;
}
.list-enter, .list-leave-to /* .list-leave-active below version 2.1.8 */ {
opacity: 0;
transform: translateY(30px);
}
解决方案
推荐阅读
- php - 如何在 laravel api 资源中添加自动增量字段
- docker - Docker - 使用标签影响启动顺序
- angular - PrimeNg 删除记录后刷新表
- javascript - 如何在小屏幕上重新排列表格单元格
- python - 如何在 Python 中使用分隔符“:”连接列表中的单个元素(由两个值组成)?
- android - 在我的服务器和我的客户端之间启用 HTTPS 通信
- java - 字符(运算符)的扫描仪输入如何工作?
- javascript - 如何更改nodejs的根文件夹?
- java - 在 PowerMock Accepting 中指定反射时的行为差异?
- vim - YouCompleteMe Go:导航位置列表时出现一个错误