ediq 2022-09-29 15:50 采纳率: 33.3%
浏览 98
已结题

使用unplugin-vue-components/vite全局挂载组件,如何设置相同格式的组件名?

vite+vue3,使用vite+vue3,使用unplugin-vue-components/vite全局挂载组件遇到的问题。
生成components.d.ts文件,目前的内容是:declare module '@vue/runtime-core' {

export interface GlobalComponents {
Affix: typeof import('./../src/components/affix/src/affix.vue')['default']
Arrow: typeof import('./../src/components/popper/src/arrow.vue')['default']
Autocomplete: typeof import('./../src/components/autocomplete/src/autocomplete.vue')['default']
Avatar: typeof import('./../src/components/avatar/src/avatar.vue')['default']
Backtop: typeof import('./../src/components/backtop/src/backtop.vue')['default']
}
}

当前 unplugin-vue-components/vite全局挂载组件的组件名是以.vue文件名生成的,组件名与.vue文件名一致
如何设置可以将所有的组件名以xx开头,例如:el-affix,el-button等
  • 写回答

3条回答 默认 最新

  • MAXLZ 2022-09-29 18:11
    关注

    好像不能使用componentexportname属性,只能使用文件名。如果统一加前缀,可以这样做:

    Components({
          resolvers: [
            AntDesignVueResolver(),
            (componentName) => {
              // P是你的前缀
              if (componentName.startsWith('P')) {
                const name = componentName.slice(1)
                // 返回原始组件路径
                return path.resolve(`src/components/${name}/src/${name}.vue`)
              }
            },
          ],
        })
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 10月14日
  • 已采纳回答 10月6日
  • 赞助了问题酬金15元 9月29日
  • 创建了问题 9月29日

悬赏问题

  • ¥15 Pyqt 如何正确的关掉Qthread,并且释放其中的锁?
  • ¥30 网站服务器通过node.js部署了一个项目!前端访问失败
  • ¥15 WPS访问权限不足怎么解决
  • ¥15 java幂等控制问题
  • ¥15 海湾GST-DJ-N500
  • ¥15 氧化掩蔽层与注入条件关系
  • ¥15 Django DRF 如何反序列化得到Python对象类型数据
  • ¥15 多数据源与Hystrix的冲突
  • ¥15 如何在线硕士了解,广告太多,希望有真实接触过的人回答下?(标签-学习|关键词-在线硕士)
  • ¥15 zabbix6.4与frp如何进行联动