vue3.0公共組件自動導入的方法實例
一、前提
我們使用的是require.context方法導入,在vite創(chuàng)建的項目內使用會報錯"require not found",所以必須用webpack創(chuàng)建項目?;蛘哂写竽芸梢哉f說vite怎么解決這個問題。
二、規(guī)則
我使用的注冊規(guī)則是,搜索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)
// 動態(tài)注冊公共組件
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')
當我們新建、刪除、給公共組件改名等操作,注冊方面就不需要任何操作了。重啟一下項目,喝口水的時間就行了 。
總結
到此這篇關于vue3.0公共組件自動導入的文章就介紹到這了,更多相關vue3.0公共組件導入內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
vue基于mint-ui的城市選擇3級聯(lián)動的示例
本篇文章主要介紹了vue基于mint-ui的城市選擇3級聯(lián)動的示例,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2017-10-10
淺談vue的iview列表table render函數(shù)設置DOM屬性值的方法
下面小編就為大家?guī)硪黄獪\談vue的iview列表table render函數(shù)設置DOM屬性值的方法。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2017-09-09

