vuejs2 - 如何在Vuetify v-data-table中将选择复选框列移动到末尾?

标签 vuejs2 vuetify.js

刚从 Vue 和 Vuetify 开始,有一个简单的问题。
我正在使用 v-data-table显示我的数据,我使用默认值 v-model="selected"show-select Prop 。默认情况下,复选框列显示为第一列,但我需要它作为最后一列,我该如何实现?

这基本上是 Vuetify doc 示例,它与我的几乎相同:

<template>
  <v-data-table
    v-model="selected"
    :headers="headers"
    :items="desserts"
    :single-select="singleSelect"
    item-key="name"
    show-select
    class="elevation-1"
  >

  </v-data-table>
</template>

<script>
  export default {
    data () {
      return 
        selected: [],
        headers: [
          {
            text: 'Dessert (100g serving)',
            align: 'left',
            sortable: false,
            value: 'name',
          },
          { text: 'Calories', value: 'calories' },
          { text: 'Fat (g)', value: 'fat' },
          { text: 'Carbs (g)', value: 'carbs' },
          { text: 'Protein (g)', value: 'protein' },
          { text: 'Iron (%)', value: 'iron' },
        ],
        desserts: [
          {
            name: 'Frozen Yogurt',
            calories: 159,
            fat: 6.0,
            carbs: 24,
            protein: 4.0,
            iron: '1%',
          },
          {
            name: 'Ice cream sandwich',
            calories: 237,
            fat: 9.0,
            carbs: 37,
            protein: 4.3,
            iron: '1%',
          },
          {
            name: 'Eclair',
            calories: 262,
            fat: 16.0,
            carbs: 23,
            protein: 6.0,
            iron: '7%',
          },
          {
            name: 'Cupcake',
            calories: 305,
            fat: 3.7,
            carbs: 67,
            protein: 4.3,
            iron: '8%',
          },
          {
            name: 'Gingerbread',
            calories: 356,
            fat: 16.0,
            carbs: 49,
            protein: 3.9,
            iron: '16%',
          },
          {
            name: 'Jelly bean',
            calories: 375,
            fat: 0.0,
            carbs: 94,
            protein: 0.0,
            iron: '0%',
          },
          {
            name: 'Lollipop',
            calories: 392,
            fat: 0.2,
            carbs: 98,
            protein: 0,
            iron: '2%',
          },
          {
            name: 'Honeycomb',
            calories: 408,
            fat: 3.2,
            carbs: 87,
            protein: 6.5,
            iron: '45%',
          },
          {
            name: 'Donut',
            calories: 452,
            fat: 25.0,
            carbs: 51,
            protein: 4.9,
            iron: '22%',
          },
          {
            name: 'KitKat',
            calories: 518,
            fat: 26.0,
            carbs: 65,
            protein: 7,
            iron: '6%',
          },
        ],
      }
    },
  }
</script>

最佳答案

将标题(列)条目放入 value: data-table-select在您的 headers 末尾大批。
因此,对于您的示例标题:

headers: [
  ...
  { text: 'Iron (%)', value: 'iron' },
  { text: '', value: 'data-table-select' }
]

关于vuejs2 - 如何在Vuetify v-data-table中将选择复选框列移动到末尾?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57515033/

相关文章:

javascript - 将数据 json 字符串传递给数字 Vue.js

javascript - 根据复选框隐藏/显示表行

javascript - 在生产中的 Vue 在按钮中使用 v-text 时会破坏应用程序

textfield - 如何更改 Vuetify 文本字段文本输入颜色

vuetify.js - 修改文本字段的css或在vuetify组件中选择

javascript - 如何在 vue.js 的 <template> 中禁用段落的 eslint 规则最大行长度?

vue.js - Vuejs - 如何插入 JS 跟踪代码,如 Google Analytics 或 Adsense

vue.js - 功能组件的子事件处理程序中的“this”上下文

javascript - SimulatedGreg Electron-Vue-Vuetify错误消息: [Vue warn]: Unknown custom element: <v-app> - did you register the component correctly?

javascript - 单选按钮显示为当前值