require.context

语法

1
require.context(directory, useSubdirectories = true, regExp = /^\.\/.*$/, mode = 'sync');

示例

1
2
require.context('./test', false, /\.test\.js$/);
require.context('../', true, /\.stories\.js$/);

要点

  1. 该方法的三个参数
    • 上下文,即目录路径
    • 是否所搜子目录
    • 匹配正则表达式
  2. 导出功能context的3个属性
    • resolve 函数,传入参数key返回该key模块的id
    • keys 模块路径组成的数组
    • id 上下文路径

实际应用:引入eacharts地图中每个省份

1
2
const rjs = require.context('echarts/map/js/province')
rjs.keys().forEach(rjs)