vue3打包组件库无法被全局注册

我在构建vue3组件库的时候,按照网上给出的方法全局注册了组件,但是在main方法里面按照像elementplus的方法导入时,这个组件无法被使用

1、这个是组件根目录的index.ts

Vue.js

2、这是button组件目录下的index.ts

Vue.js

3、这是vue的main方法里面导入时候的配置

Vue.js

4、目录结构

Vue.js

讨论数量: 3

你这个写法怎么说呢,感觉起来有点怪,button 下的那个 index.ts 里面,为什么是拿组件去 install app 呢,应该是 appcomponent 组件吧,尝试一下这个
button/index.ts

import MyButton from './index.vue'
import { App } from 'vue'

MyButton.name = 'MyButton'

MyButton.install = (app: App) => {
  app.component(MyButton.name, MyButton)
}

export default MyButton

packages/index.ts

import MyButton from './button'
import { App } from 'vue'

const components = [MyButton]
const install = (app: App) => {
  components.map(item => {
    app.component(item.name, item)
  })
}

export default install
1年前 评论
TenX (楼主) 1年前
qingshui (作者) 1年前

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!