首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何淡出v-data-table行

如何淡出v-data-table行
EN

Stack Overflow用户
提问于 2019-12-05 05:58:02
回答 1查看 638关注 0票数 0

我的v-data-table行中有一个删除行的按钮。我正在使用一个典型的拼接,它从数组中删除行,表行被删除,只是弹出,下面的行跳起来。

代码语言:javascript
复制
markApproved(index, invoice) {
  this.invoices.splice(index, 1);
}

我想让Vuetify淡出行,并平滑地向上滑动剩余的行。如何使用Vuetify转换来实现这一点?

EN

回答 1

Stack Overflow用户

发布于 2020-04-17 02:13:55

所以..。我对你的问题没有一个完整的答案,但我希望通过在这里分享,我们可以得出一个完整的解决方案。

其他搜索我发现了如何让v-data-table行淡入淡出...但是..。这只是最后一行。

使用标准的vuetify餐桌甜点:

代码语言:javascript
复制
      <v-data-table 
      :headers="headers" 
      :items="desserts">
        <template v-slot:body="{ items }">
          <tbody name="tr-fade" is="transition-group">
            <template>
              <tr
                v-for="(item, index) in items"
                :key="index"
                @click="desserts.splice(index,1)"
              >
                <td>{{item.name}}</td>
                <td>{{item.calories}}</td>
                <td>{{item.fat}}</td>
                <td>{{item.carbs}}</td>
                <td>{{item.protein}}</td>
                <td>{{item.iron}}</td>
              </tr>
            </template>
          </tbody>
        </template>
      </v-data-table>

和一些标准的css转换:

代码语言:javascript
复制
.tr-fade-enter-active,
.tr-fade-leave-active {
     transition: all 0.5s;
     }
.tr-fade-enter, .tr-fade-leave-to /* .fade-leave-active below version 2.1.8 */ 
{
  opacity: 0;
}

这将使动画在数据表中工作...但实际上是动画的那一行是最后一行。

演示:https://codesandbox.io/s/v-data-table-fade-row-uttwv

我认为通过使用refs直接在DOM中定位行是一种类似黑客的解决方案,但是还没有能够尝试它。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/59185216

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档