Как динамически изменить заголовок v-data-таблицы? - PullRequest
0 голосов
/ 01 марта 2019

Я пытаюсь создать таблицу v-data, заполненную данными json (Vue + Vuetify + Vue-Resource).Я могу показать данные без проблем, но мне нужно изменить первый столбец заголовка, чтобы было видно, какие данные пользователь просматривает на самом деле.В данный момент я использую статический заголовок без нужной метки:

headers: [
    {
      text: "",
      align: "left",
      sortable: false,
      value: "name",
      id: "primeiraColunaColuna"
    },

    { text: "total QTD", value: "total QTD" },
    { text: "total", value: "Total" },
    { text: "Date", value: "Date" },
    { text: "Time", value: "Time" }
  ],

Я хочу изменить текстовое поле на A, B, C, D и т. Д.случается

1 Ответ

0 голосов
/ 01 марта 2019

Вы можете вернуть заголовки из метода, который принимает текст в качестве параметра, например, вы можете использовать текущий индекс в цикле:

<v-layout>
  <v-flex v-for="i in 3" xs4>
    <v-data-table
    :headers="getHeaders(i)"
    :items="desserts"
    class="elevation-1"
    >
      <template v-slot:items="props">
        <td>{{ props.item.name }}</td>
        <td class="text-xs-right">{{ props.item.calories }}</td>
        <td class="text-xs-right">{{ props.item.fat }}</td>

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

methods:{
  getHeaders(headingText){
    return [
    {
      text: 'Dynamic heading no. ' +headingText,
      align: 'left',
      sortable: false,
      value: 'name'
    },
    { text: 'Calories', value: 'calories' },
    { text: 'Fat (g)', value: 'fat' }
  ];
}

}

live example:https://codepen.io/sf-steve/pen/pYgOze

...