javascript - 如何使用索引在 Vuejs (vuetify) 中仅选择一个扩展面板?
问题描述
我在我的 Vue.js 项目中使用 Vuetify,但扩展面板有问题。我正在对一组对象进行 v-for,然后我将扩展面板与外部控制一起放置。外部控制是指与面板分离的按钮,用于展开和关闭面板。
我现在的代码是这样的:
<v-btn @click="showHidePanel(index)">
Button
</v-btn>
<v-expansion-panels v-model="panel>
<v-expansion-panel>
<v-expansion-panel-content>
I am expanded!
</v-expansion-panel-content>
</v-expansion-panel>
</v-expansion-panels>
现在我的脚本:
data() {
return {
panel: [],
}
}
//
showHidePanel(data) {
if (this.panel.length == 0) {
this.panel = [...Array(data).keys()].map((k, i) => i);
} else {
this.panel = [];
}
},
由于“面板”变量是一个数组,所有面板都在扩展,但我尝试过使用整数,但它也不起作用。任何人都可以帮助我吗?
解决方案
看起来您已经showHidePanel
从docs复制了您的功能。该功能旨在切换所有面板或不切换任何面板。要仅在index
使用时切换面板:
showHidePanel(index) {
if (this.panel.indexOf(index)) {
this.panel = this.panel.filter(i => i!=index);
} else {
this.panel.push(index);
}
},
推荐阅读
- python - 将一个文件合并到组中的另一个文件
- java - 如何将时间戳转换为日期
- c# - 我正在尝试从尚未使用 LINQ 创建具有特定属性的附加对象的用户列表中创建新的用户列表
- c# - 无法连接到 Azure SignalR Hub
- python - 如何将 lmplot 图叠加在一起?
- sapui5 - 将 WEBIDE 连接到 Netweaver GW 时出现问题
- java - 如何统一阅读Android Intent.EXTRA_TEXT
- mongodb - 如何有效地在具有多个范围的单个字段上查询 Mongodb?
- linear-regression - xgboost 线性回归 (gblinear) 错误预测
- reactjs - 使用 useReducer 进行客户端过滤