// webpack会创建一个以svg目录为上下文的require函数
const req = require.context('./svg',false, /\.svg$/)
// 把所有文件都引入一遍
req.keys().map(req)
/**
* @description 批量导入文件
* @param {Object} context 上下文对象
* @param {RegExp} reg 匹配规则
* @returns {Object} 对象
*/
export const importAllModule = (context: RequireContext, reg = /\.vue$/) => {
return context.keys().reduce((compObj: any, fileName) => {
const compName = changeStr(fileName.replace(/^\.\//, '').replace(/\.\w+$/, ''))
compObj[compName] = context(fileName).default || context(fileName)
return compObj
}, {})
}
网友评论