简体   繁体   English

如何使 vuetify 扩展面板独奏?

[英]How to make vuetify expansion panel to be solo?

How to make vuetify expansion panel to open only one panel?如何使vuetify扩展面板只打开一个面板? right now, I can close all the panels which is a problem.现在,我可以关闭所有有问题的面板。 I want to have stay the last panel which opened to stay open.我想保留最后一个打开的面板以保持打开状态。

I want to be not able to close the opened panel if I clicked on the opend panel.如果单击打开的面板,我希望无法关闭打开的面板。

 new Vue({ el: '#app', vuetify: new Vuetify(), })
 <link href="https://cdn.jsdelivr.net/npm/vuetify@2.0.19/dist/vuetify.min.css" rel="stylesheet"/> <script src="https://cdn.jsdelivr.net/npm/vuetify@2.0.19/dist/vuetify.min.js"></script> <script src="https://cdn.jsdelivr.net/npm/vue@2.x/dist/vue.js"></script> <script src="https://cdn.jsdelivr.net/npm/babel-polyfill/dist/polyfill.min.js"></script> <div id="app"> <v-app id="inspire"> <v-row justify="center"> <v-expansion-panels accordion> <v-expansion-panel v-for="(item,i) in 5":key="i" > <v-expansion-panel-header>Item</v-expansion-panel-header> <v-expansion-panel-content> Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. </v-expansion-panel-content> </v-expansion-panel> </v-expansion-panels> </v-row> </v-app> </div>

Here is my code on CodePen这是我在 CodePen 上的代码

Try this.尝试这个。 https://codepen.io/kdydesign/pen/BaBeeVO?editors=1011 https://codepen.io/kdydesign/pen/BaBeeVO?editors=1011

<v-expansion-panels v-model="panel">
  <v-expansion-panel
        v-for="(item,i) in 5"
        :key="i"
        @click="expanded(i)"
  >
     ......
  </v-expansion-panel>
</v-expansion-panels>
data () {
  return {
    panel: []
  }
},
methods: {
  expanded (index) {
    this.panel = []
    this.panel.push(index)
  }

 new Vue({ el: '#app', vuetify: new Vuetify() })
 <link href="https://cdn.jsdelivr.net/npm/vuetify@2.0.19/dist/vuetify.min.css" rel="stylesheet"/> <script src="https://cdnjs.cloudflare.com/ajax/libs/vue/2.5.17/vue.js"></script> <script src="https://cdn.jsdelivr.net/npm/vuetify@2.0.19/dist/vuetify.min.js"></script> <div id="app"> <v-app id="inspire"> <v-row justify="center"> <v-expansion-panels accordion multiple> <v-expansion-panel v-for="(item,i) in 5":key="i" > <v-expansion-panel-header>Item</v-expansion-panel-header> <v-expansion-panel-content> Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. </v-expansion-panel-content> </v-expansion-panel> </v-expansion-panels> </v-row> </v-app> </div>

Just add a multiple attribute.只需添加multiple属性。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM