当前位置: 首页 > news >正文

webpack 中 require.context() 的用法

一、什么是 require.context

It allows you to pass in a directory to search, a flag indicating whether subdirectories should be searched too, and a regular expression to match files against.
– webpack 官方说明

  • 一个 webpack 的 api ,通过该函数可以获取一个上下文,从而实现工程自动化(遍历文件夹的文件,从中获取指定文件,自动导入模块)。
  • 在前端工程中,如果一个文件夹中的模块需要频繁引用时可以使用该中方式一次性引入

二、如何使用

  • 语法
require.context(directory,(useSubdirectories = true),(regExp = /^\.\/.*$/),(mode = 'sync')
);// 示例
require.context('./test', false, /\.test\.js$/);
// a context with files from the test directory that can be required with a request ending with `.test.js`.
  • 参数说明
参数类型说明
dirnameString需要读取模块的文件的所在目录
useSubdirectoriesBoolean是否遍历子目录
RegExpRegExp匹配的规则(正则表达式)
  • 返回值

导出的函数有 3 个属性: resolve, keys, id.如下表所示

属性类型说明
resolveFunction接受一个参数request,request为文件夹下面匹配文件的相对路径,返回这个匹配文件相对于整个工程的相对路径
keysFunction返回一个数组,由匹配成功的文件所组成的数组
idString执行环境的 id
  • 用法示例
function importAll(r) {r.keys().forEach(r);
}importAll(require.context('../components/', true, /\.js$/));
http://www.lryc.cn/news/377151.html

相关文章:

  • 漫画 | “本世纪最重要的一篇硕士论文诞生了!”
  • Gone框架介绍29 - 在Gone中使用gRPC通信
  • 开源一套Trados Sdlxliff 对比工具
  • 百度网盘 url 正则表达式
  • 【stable diffusion】ComfyUI扩展安装以及”127.0.0.1拒绝了我们的连接请求“解决记录
  • OceanBase 列存中多列过滤性能解析
  • 嵌入式实验---实验二 中断功能实验
  • 在 Visual Studio 2022 (Visual C++ 17) 中使用 Visual Leak Detector
  • 基于IDEA的Maven(properties属性配置)
  • 边缘计算(Edge Computing)_关键概念/优势/应用场景
  • idea关联gitlab仓库,访问报错
  • 【Hive】new HiveConf()时加载的配置浅析
  • Glide 缓存机制研究及同命名图片的替换回显
  • 一键简易桌签(带背景)-Word插件-大珩助手
  • 如何解决centos停止维护后更换Debian11平替?
  • 服务器雪崩的应对策略之----熔断机制
  • RestClient操作索引库和文档
  • 【设计模式深度剖析】【11】【行为型】【解释器模式】| 以算术表达式求值为例加深理解
  • MySQL8,Navicat能登陆成功,密码却忘记了
  • 游戏中的寻路算法研究
  • 【AWS SMB】关于AWS 中小型企业 (SMB) 能力介绍及注意事项
  • 中年之恋:重返青春的旅程
  • 人工智能中的监督学习和无监督学习
  • 深度学习500问——Chapter12:网络搭建及训练(1)
  • HuggingFace CLI 命令全面指南
  • FreeRTOS源码分析
  • python实战:将视频内容上传到社交媒体平台
  • 【深度学习】sdwebui A1111 加速方案对比,xformers vs Flash Attention 2
  • 5分钟了解单元测试
  • VSCode之C/C++插件之宏定义导致颜色变暗