本节内容源自以下链接的内容,并受 CC BY 4.0 许可证的约束。
如果没有特别说明,以下内容可以假定为基于原始内容的修改和删除的结果。
Context 指的是 require 或动态 import(),其表达式类似于 require('./locale/' + name + '.json')。当遇到这样的表达式时,Rspack 会推断目录 ('./locale/') 和正则表达式 (/^.*\.json$/)。由于名称在编译时未知,Rspack 会将每个文件作为模块包含在包中。
ContextReplacementPlugin 允许您覆盖推断的信息。有多种方法可以配置该插件。
如果资源(目录)与 resourceRegExp 匹配,插件将分别使用 newContentResource、newContentRecursive 或 newContextRegExp 替换默认资源、递归标志或生成的正则表达式。如果 newContentResource 是相对的,它将相对于之前的资源解析。
moment/locale 上下文仅限于与 /de|fr|hu/ 匹配的文件。因此只包含这些语言环境 (有关更多信息,请参阅 此问题)。
newContentResource 和 newContentCreateContextMap 参数也可使用。
这两个参数可以一起使用来更具针对性地重定向请求。newContentCreateContextMap 允许您以对象的格式将运行时请求映射到编译时请求。