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')
当我们新建、删除、给公共组件改名等操作,注册方面就不需要任何操作了。重启一下项目,喝口水的时间就行了 。
以上就是关于vue怎样自动导入公共组件的介绍,大家按照上述方法操作即可,希望本文对大家学习vue框架有帮助,想要了解更多大家可以关注群英网络其它相关文章。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
长按识别二维码并关注微信
更方便到期提醒、手机管理