Vue.js Vue+;Vuetify扩展面板进入/离开动画

Vue.js Vue+;Vuetify扩展面板进入/离开动画,vue.js,vuetify.js,Vue.js,Vuetify.js,在Vuetify的帮助下,我目前正在Vue.js中开发一个webapp 我发现扩展面板元素非常有用,我想在我的网站上使用它 因此,我可以很容易地从Firebase中获取要显示的数据,并继续使用此模板加载项目: <v-expansion-panel popout> <v-expansion-panel-content v-for="doc in filteredclienti" :key="doc.id"> <

在Vuetify的帮助下,我目前正在Vue.js中开发一个webapp

我发现扩展面板元素非常有用,我想在我的网站上使用它

因此,我可以很容易地从Firebase中获取要显示的数据,并继续使用此模板加载项目:

    <v-expansion-panel popout>
      <v-expansion-panel-content
      v-for="doc in filteredclienti"
      :key="doc.id">
        <div slot="header">{{doc.data().Nome}} {{doc.data().Cognome}}</div>
        <v-card>
        Card content
        </v-card>
     </v-expansion-panel-content>
   </v-expansion-panel

{{doc.data().Nome}{{doc.data().Cognome}}
卡片内容

我添加了一个删除按钮,可以将“已删除”的文档滑出。 享受


{{doc.data}
删除
卡片内容
导出默认值{
数据:()=>({
过滤器客户端:[
{id:1,数据:“data1”},
{id:2,数据:“data1”},
{id:3,数据:“data1”},
{id:4,数据:“data1”}
]
}),
方法:{
删除项目(id){
this.filteredclienti=this.filteredclienti.filter(d=>d.id!==id);
}
}
};
.列表进入活动状态,
.列出活动状态{
过渡:所有1;
}
.输入列表,
.列名留任{
不透明度:0;
转化:translateX(100vw);
}

我猜您必须使用默认的扩展面板弹出动画,或者设计您自己的扩展面板,以您想要的方式设置动画。但我不想设置扩展动画,我想设置进入/离开时刻的动画
<template>
  <v-app>
    <v-expansion-panel popout>
      <transition-group name="list" tag="v-expansion-panel">
        <v-expansion-panel-content v-for="doc in filteredclienti" :key="doc.id">
          <div slot="header">
            <span>{{doc.data}}</span>
            <v-btn class="error" @click="deleteItem(doc.id)">
              <v-icon>delete</v-icon>
            </v-btn>
          </div>
          <v-card>Card content</v-card>
        </v-expansion-panel-content>
      </transition-group>
    </v-expansion-panel>
  </v-app>
</template>

<script>
export default {
  data: () => ({
    filteredclienti: [
      { id: 1, data: "data1" },
      { id: 2, data: "data1" },
      { id: 3, data: "data1" },
      { id: 4, data: "data1" }
    ]
  }),
  methods: {
    deleteItem(id) {
      this.filteredclienti = this.filteredclienti.filter(d => d.id !== id);
    }
  }
};
</script>

<style>
.list-enter-active,
.list-leave-active {
  transition: all 1s;
}
.list-enter,
.list-leave-to {
  opacity: 0;
  transform: translateX(100vw);
}
</style>