vue 引入公共組件之 require.context

require.context是webpack中,用來創(chuàng)建自己的(模塊)上下文

webpack 會(huì)在打包構(gòu)建代碼中解析它

require.context接收三個(gè)參數(shù):

  1. 要搜索的文件夾目錄
  2. 是否搜索它的子目錄
  3. 以及一個(gè)匹配文件的正則表達(dá)式
require.context('../views/components', true, /\.vue/)

在我們項(xiàng)目中,有很多自定義的全局組件,使用這個(gè)將會(huì)非常方便,下面舉例說明

image

我這里只寫了兩個(gè),當(dāng)我們有一百個(gè)的時(shí)候,如果手動(dòng)全局引入。。。

image

這將是慘不忍睹的

所以,投機(jī)取巧的我們,利用了 require.context

import Vue from 'vue'
// 自定義組件
const requireComponents = require.context('../views/components', true, /\.vue/)
// 打印結(jié)果
// 遍歷出每個(gè)組件的路徑
requireComponents.keys().forEach(fileName => {
  // 組件實(shí)例
  const reqCom = requireComponents(fileName)
  // 截取路徑作為組件名
  const reqComName = fileName.split('/')[1]
  // 組件掛載
  Vue.component(reqComName, reqCom.default || reqCom)
})

一段話搞定一整個(gè)文件夾的組件,是否很方便

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容