diff --git a/src/plugins/components.ts b/src/plugins/components.ts index fc1573a..264a861 100644 --- a/src/plugins/components.ts +++ b/src/plugins/components.ts @@ -1,22 +1,13 @@ - const modules = import.meta.globEager('../components/*.vue') export default { install(app) { Object.keys(modules).forEach(componentPath => { - let splitPart1 = componentPath.split("/") - let componentName = splitPart1[splitPart1.length - 1].split(".vue")[0] + // 获取遍历的当前组件实例对象 + let curComponent = modules[componentPath]?.default - // 获取所有组件的实例对象,它是个数组 - let modulesData = Object.values(modules).map((v) => v.default) - - // 过滤出当前组件的实例对象与注册组件匹配一致 - let curComponent = modulesData.filter( - item=>item.__file.split("/")[item.__file.split("/").length-1].split(".vue")[0] === componentName - )[0] - - app.component(componentName, curComponent); + app.component(curComponent.name, curComponent); }) }