vue3 isCustomElement 正在检测组件作为 vue 组件

Fan*_*119 5 javascript web-component vue-component vuejs3 vite

我正在尝试让 web 组件与 vitejs 一起使用。

我尝试使用的组件: https: //www.webcomponents.org/element/input-knob

我按照文档中的描述做了。

安装和设置@vitejs/plugin-vue

https://github.com/vitejs/vite/tree/main/packages/plugin-vue#vitejsplugin-vue-

在 config 中启动自定义元素。(我还尝试简单地将自定义元素放入 main.js https://github.com/vitejs/vite/issues/1312

vite.config.js


import { VitePWA } from 'vite-plugin-pwa'
import vue from '@vitejs/plugin-vue'
export default {
  plugins: [
    VitePWA(),
    vue({
      template: {
        compilerOptions: {
          isCustomElement: tag => tag === 'input-knob'
        }
      }
    })
  ]
}



Run Code Online (Sandbox Code Playgroud)

仍然收到相同的警告:皱眉:

app.config.isCustomElement = tag => tag.startsWith('input-')

console.log(app.config.isCustomElement('input-knob'))

Run Code Online (Sandbox Code Playgroud)

main.js


import { createApp } from 'vue'
import App from './App.vue'
import './index.css'

const app = createApp(App);

app.config.isCustomElement = tag => tag.startsWith('input-')

console.log(app.config.isCustomElement('input-knob'))
app.mount('#app')


Run Code Online (Sandbox Code Playgroud)

[Vue warn]:无法解析组件:输入旋钮

日志返回true,所以我不确定问题到底出在哪里。

Fan*_*119 0

问题是vite版本。将其推送到 vite2 可以修复此问题。

"vite": "^2.0.5"