使用require.context實現前端工程自動化

require.context是什麼

一個webpack的api,通過執行require.context函數獲取一個特定的上下文,主要用來實現自動化導入模塊,在前端工程中,如果遇到從一個文件夾引入很多模塊的情況,可以使用這個api,它會遍歷文件夾中的指定文件,然後自動導入,使得不需要每次顯式的調用import導入模塊

什麼時候需要用到require.context

在Vue寫的項目中,我把路由通過不同的功能劃分成不同的模塊,在index.js中一個個導入(原諒ide的警告-.-),但是如果項目變大了之後,每次手動import會顯得有些力不從心,這裏可以使用require.context函數遍歷modules文件夾的所有文件一次性導入到index.js中

在這裏插入圖片描述

const modulesFiles = require.context(’./modules’, true, /.js$/)

const modules = modulesFiles.keys().reduce((modules, modulePath) => {
// set ‘./app.js’ => ‘app’
const moduleName = modulePath.replace(/^./(.*).\w+$/, ‘$1’)
const value = modulesFiles(modulePath)
modules[moduleName] = value.default
return modules
}, {})


發佈了103 篇原創文章 · 獲贊 27 · 訪問量 9萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章