Vuetify Datatable-在所有列上启用内容编辑

时间:2020-01-23 07:43:05

标签: vue.js datatable vuetify.js

我有一个包含数百列(和行)的数据表,我希望所有这些表都可以被编辑。 https://vuetifyjs.com/en/components/data-tables上的Vuetify示例(部分:内容编辑)显示了使单元格可编辑的可能性。但是,手动对数百个列执行此操作是不可能的。有没有一种方法可以使所有单元默认为可编辑状态?

1 个答案:

答案 0 :(得分:6)

AFAIK,默认情况下无法使 all 头字段可编辑,但是您可以自定义主体模板,并使用v-for和v-edit-dialog为每个字段动态呈现数据项目。例如...

           <template v-slot:body="{ items, headers }">
                <tbody>
                    <tr v-for="(item,idx,k) in items" :key="idx">
                        <td v-for="(header,key) in headers" :key="key">
                            <v-edit-dialog
                              :return-value.sync="item[header.value]"
                              @save="save"
                              @cancel="cancel"
                              @open="open"
                              @close="close"
                            > {{item[header.value]}}
                              <template v-slot:input>
                                <v-text-field
                                  v-model="item[header.value]"
                                  label="Edit"
                                  single-line
                                ></v-text-field>
                              </template>
                            </v-edit-dialog>
                        </td>
                    </tr>
                </tbody>
            </template>

Codeply