Ich entwickle VueJS 3 in einem Laravel-Projekt und verwende eine JS-Datei, die mir Elemente für eine Markdown-Symbolleiste bereitstellt. Im Grunde handelt es sich um eine Reihe von Funktionen, die mir eine Schaltfl?che zum Anwenden der ausgew?hlten Markdown-Option bieten. Alles funktioniert gut, aber ich bekomme die Konsolenfehler, die ich verschwinden lassen m?chte.
Sie sind alle so ?hnlich:
Failed to resolve component: md-linedivider If this is a native custom element, make sure to exclude it from component resolution via compilerOptions.isCustomElement. at <Markdowntoolbar> at <Article onVnodeUnmounted=fn<onVnodeUnmounted> ref=Ref< undefined > > at <BaseTransition mode="out-in" appear=false persisted=false ... > at <Transition enter-active-class="animate__animated animate__fadeInLeft" leave-active-class="animate__animated animate__bounceOutUp" mode="out-in" > at <RouterView> at <App> at <Bodycomponent> at <App>
Das bedeutet, dass md-linedivider-Elemente über CompilerOptions.isCustomElement von der Komponentenaufl?sung ausgeschlossen werden sollten. Ich habe mich nach einer L?sung umgesehen und nur diese gefunden, aber ich habe keine vue.config.js in meinem Laravel-Projekt, um sie anzuwenden. Ich habe versucht, dies in webpack.mis.js und app.js zu tun, ohne Erfolg.
Wei? es jemand?
對于 Nuxt3,您可以在 nuxt.config.ts
中設(shè)置值,如下所示。
export default defineNuxtConfig({ vue: { compilerOptions: { isCustomElement: (tag) => ['lite-youtube'].includes(tag), }, } })
在您的webpack.mix.js中嘗試一下
mix.js('resources/assets/js/app.js', 'public/js').vue({ options: { compilerOptions: { isCustomElement: (tag) => ['md-linedivider'].includes(tag), }, }, });
更新 4.8.22 - 對于 Vite 項目:vite.config.js
import { defineConfig } from 'vite' import vue from '@vitejs/plugin-vue' export default defineConfig({ plugins: [ vue({ template: { compilerOptions: { isCustomElement: (tag) => ['md-linedivider'].includes(tag), } } }) ] })