Vue.js 为什么所有扩展卡都是一次点击打开的?

Vue.js 为什么所有扩展卡都是一次点击打开的?,vue.js,vuetify.js,expansion,Vue.js,Vuetify.js,Expansion,带vuetify和vuex的js,用于从API获取数据。 当我点击扩展图标时,我有一个带有扩展卡的时间轴组件。时间轴中的所有卡都会打开,但我只想打开我点击的那个特定卡 AllannounceList是我从vuex api中获得的一种状态 显示我的数据没有问题 我的模板是: <v-timeline :reverse="reverse" :dense="dense" > <v

带vuetify和vuex的js,用于从API获取数据。 当我点击扩展图标时,我有一个带有扩展卡的时间轴组件。时间轴中的所有卡都会打开,但我只想打开我点击的那个特定卡

AllannounceList是我从vuex api中获得的一种状态 显示我的数据没有问题

我的模板是:

  <v-timeline
                :reverse="reverse"
                :dense="dense"
        >
            <v-timeline-item
                    v-for="item in allAnnouncementList"
                    :key="item"
                    :left="left"
                    :right="right"
                    class="font-persian"
            >
                <v-card
                        class="mx-auto"
                        max-width="344"
                >
                    <v-card-title class="headline primary white&#45;&#45;text" dir="rtl">
                        {{item.title}}
                    </v-card-title>

                    <v-card-actions>
                        <v-spacer></v-spacer>

                        <v-btn
                                icon
                                @click="show = !show"

                        >
                            <v-icon>{{ show ? 'mdi-chevron-up' : 'mdi-chevron-down' }}</v-icon>
                        </v-btn>

                    </v-card-actions>
                    <v-expand-transition>
                        <div v-show="show">
                            <v-divider></v-divider>
                            <v-card-text v-html="item.body">
                                {{item.body}}
                            </v-card-text>
                        </div>
                    </v-expand-transition>
                </v-card>
            </v-timeline-item>
        </v-timeline>




使用此
所有div都会查找相同的显示或隐藏条件。你需要统一每个条件。您可以使用带有
v-for
的索引来实现这一点,如下所示:

导出默认值{
名称:“公告网”,
组件:{},
数据(){
返回{
页码:1,
selectedIndex:null,
}
},
}

{{item.title}
{{index==selectedIndex?'mdi-chevron-up':'mdi-chevron-down'}
{{item.body}
export default {
        name: "AnnouncementCom",
        components: {},
        data() {
            return {
                page: 1,
                show: false,
            }
        },

    }