Je suis nouveau sur Vue et Vuetify. Je viens de créer une application rapide pour vérifier les deux. Mais je commence à avoir des problèmes au début. Le vue échoue identifier les composants vuetify en dépit de toutes les étapes décrites dans le document.
vue.runtime.esm.js? ff9b: 587 [Vue warn]: Élément personnalisé inconnu: - avez-vous enregistré le composant correctement? Pour les composants récursifs, veillez à fournir l'option "nom".
trouvé dans
---> à src\App.vue
Vous pouvez accéder à l'intégralité du code sur le bac à sable https://codesandbox.io/s/40rqnl8kw
Vous rencontrez probablement un problème d'ordre dans vos opérations. Par exemple, vous définissez votre propre composant App
qui utilise le composant v-app
Avant même que vous ayez dit à Vue de l'utiliser, donc = Vue suppose que vous utilisez votre propre composant personnalisé v-app
.
Placez Vue.use(Vuetify)
avant de commencer toute instance Vue (via new Vue()
qui nécessite des composants Vuetify, ou placez-la dans les définitions de composant elles-mêmes, tout en haut de la Balise <script>
Après importation Vue et Vuetify dans le composant de fichier unique. Ne vous inquiétez pas si vous avez plus d'une déclaration Vue.use(Vuetify)
, car seul le premier fera n'importe quoi - tous les appels suivants ne feront tout simplement rien.
Voici un exemple de correction dans l'ordre des opérations: https://codesandbox.io/s/m9jpw517op
Par souci de fournir l'extrait de code ici en cas de rupture du lien dans le futur:
Original - Vue.use()
est appelée avant new Vue()
, ce qui entraîne une erreur.
new Vue({
el: "#app",
components: { App },
template: "<App/>"
});
Vue.use(Vuetify);
Fix - L'appel de new Vue()
après Vue.use()
permet Vue de résoudre le dépendance correctement.
Vue.use(Vuetify);
new Vue({
el: "#app",
components: { App },
template: "<App/>"
});
Edit: Cette réponse a été modifiée après avoir été acceptée afin de corriger une imprécision qui pourrait induire en erreur les lecteurs futurs, minimiser les modifications de l'échantillon de code pour des raisons de simplicité, et évitez que le correctif en question ne soit inaccessible si le site Web codesandbox devient indisponible.
Un autre problème possible est que si vous avez activé la carte, vous devrez également spécifier tous les composants que vous souhaitez inclure:
Edit: on dirait que VuetifyLoader le fera automatiquement pour vous
https://vuetifyjs.com/en/framework/a-la-carte
import Vue from 'vue' import App from './App.vue' import Vuetify, { VApp, // required VNavigationDrawer, VFooter, VToolbar, VFadeTransition } from 'vuetify/lib' import { Ripple } from 'vuetify/lib/directives' Vue.use(Vuetify, { components: { VApp, VNavigationDrawer, VFooter, VToolbar, VFadeTransition }, directives: { Ripple } })
Si vous venez de Google: pour moi, c’était briser les changements de v1 à v2, ce qui rendait la plupart des exemples de Codepen inutiles. J'ai dû changer cela pour faire fonctionner une application très simple Vuetify avec des tiroirs de navigation:
remove toolbar from <v-app toolbar>
replace v-toolbar with v-app-bar
replace v-app-bar-nav-icon with v-app-bar-side-icon
replace v-app-bar-title with v-toolbar
replace v-list-tile to v-list-item
replace all flat with text
Peut-être que cela aide quelqu'un.