vue怎样自动导入公共组件?
发布时间:2022-02-25 13:52:11 所属栏目:语言 来源:互联网
导读:vue怎样自动导入公共组件?其实想要实现自动导入公共组件并不困难,但是有一些问题以及规则需要注意,下面小编就给大家介绍一下vue导入公共组件的方法和步骤。 一、前提 我们使用的是require.context方法导入,在vite创建的项目内使用会报错require not foun
|
vue怎样自动导入公共组件?其实想要实现自动导入公共组件并不困难,但是有一些问题以及规则需要注意,下面小编就给大家介绍一下vue导入公共组件的方法和步骤。 一、前提 我们使用的是require.context方法导入,在vite创建的项目内使用会报错"require not found",所以必须用webpack创建项目。或者有大能可以说说vite怎么解决这个问题。 二、规则 我使用的注册规则是,搜索src/components/路径下的所有目录和子目录,搜索文件名叫做"index.vue"的文件,使用上级目录的名字作为组件名,进行注册。结构如下: 只注册index.vue,其他名字的组件不注册, 三、注册 由于vue3.0没有import “Vue” from vue,我们需要使用app来注册,所以只能在 main.js 入口文件注册 // src/main.js import { createApp } from 'vue' const app = createApp(App) // 动态注册公共组件 const requireComponent = require.context( // 其组件目录的相对路径 '@/components', // 是否查询其子目录 true, // 匹配基础组件文件名的正则表达式 /index.vue$/ ) const jieguo = requireComponent.keys().filter((item:any)=> true) jieguo.forEach((item:any)=>{ const componentConfig = requireComponent(item) const name = item.split("/")[1] app.component(name,componentConfig.default || componentConfig) }) // 注册结束 app.mount('#app') (编辑:周口站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
