如果想引入一个文件夹中的所有(或部分)文件,可以使用require.context方法来引入
require.context(“文件路径”,“是否搜素子路径Boolean”,“匹配文件的正则表达式”)
require.context() 返回的是一个function
const requireApi = require.context("./api",false,/\.js$/); console.log(requireApi)想要获取到require回来的数据,还要 用requireApi.keys()获取到返回文件中所有文件的相对路径(相对上面代码框中./api的路径) 用requireApi('相对路径')获取文件内容
console.log(apiAll.keys()) console.log(apiAll.keys()[8]) console.log(apiAll(apiAll.keys()[8])) // 本例中选了数组中第八个文件路径来展示(别问我为啥选这个) // ceShi4.js module.exports.aaa = { bbb:111 }导入一个文件夹中的所有文件
const apiAll = require.context("./api",false,/\.js$/); let api = {}; apiAll.keys().forEach(item => { api[item.replace(/^\.\/(.*)\.js$/,'$1')] = apiAll(item); }); console.log(api)如果要兼容export default等写法,请看下边