компонент v-data-table не найден

#typescript #vue.js #vuetify.js #vuejs3

#typescript #vue.js #vuetify.js #vuejs3

Вопрос:

Я пытаюсь создать таблицу данных sudo с помощью vuetify. Целью является отображение динамически вычисляемых данных с использованием v-data-table

Однако у меня возникли проблемы с добавлением Vuetify в мое приложение.

Я попытался добавить

 vue.use(Vuefity)
 

но он выдает ошибку -> Property 'use' does not exist on type 'typeof

Вот как выглядит мой код

 computed: {
      headers(): string[] {
        return ["test1"]
      },
      items(): string[] {
        return ["test", "t2"];
      }
} 
 <div>
    This is new data
    {{items[0]}}
    <v-data-table
       :items-per-page="5"
       :items="items"
       :headers="headers"
       class="elevation-1"> 
    </v-data-table>
</div> 

Вот как выглядит мой main.ts

 import { createApp } from 'vue'
import Vue from 'vue'
import App from './App.vue'

import "vuetify/dist/vuetify.min.css"
import Vuetify from "vuetify"


//Vue.use(Vuetify);
//Vue.readonly(Vuetify);

createApp(App).mount('#app') 

Когда я пытаюсь запустить код, браузер не может обнаружить v-data-table.
И выдает следующую ошибку:

Failed to resolve component: v-data-table

Ответ №1:

Vuetify dosent в настоящее время поддерживает vue3, использует vue2. so Vue.use недоступен в vue3, и поскольку vuetify dosent добавил v-data-table компонент, он недоступен.

Комментарии:

1. Vue3 — это своего рода требование. Есть ли какая-либо альтернатива vuetify, которая работает для vue 3?

2. Почему Vue 3 является обязательным требованием? В документах Vue говорится, что Vue3 не готов для приложений prod, поэтому это действительно не должно быть обязательным требованием. Лучшее, что можно сделать прямо сейчас, это использовать плагин composition-api с vue2, а затем вы можете использовать Vuetify. В противном случае вам не повезет.