5

类似于: 如何在 react-native 的打包程序中将我的包的依赖项的特定 node_modules 列入黑名单?

我正在尝试使用需要返回正则表达式的黑名单选项从 Metro 打包程序中排除本机反应。

我需要的是返回类似的东西:

/\/DYNAMIC_PROJECT_DIRECTORY\/node_modules\/react-native\/.*/,

我可以将一个变量插入到 DYNAMIC_PROJECT_DIRECTORY 中,因为它会根据另一个模块的纱线工作区路径而改变。

我只是不熟悉正则表达式!

谢谢

编辑:我尝试在该格式的路径中进行硬编码,但仍然无法将其列入黑名单,因此,如果有人能指出正确的方向来排除该文件夹及其中的所有内容,将不胜感激!

4

1 回答 1

6

您可以使用RegExp构造函数创建使用动态变量的正则表达式:

new RegExp(`\/${DYNAMIC_PROJECT_DIRECTORY}\/node_modules\/react-native\/.*`);

笔记:

  • 此示例使用模板字符串插入DYNAMIC_PROJECT_DIRECTORY; 你也可以写:
    new RegExp('\/' + DYNAMIC_PROJECT_DIRECTORY + '\/node_modules\/react-native\/.*');
  • 使用这种创建正则表达式的方法时,前导和尾随斜杠被省略
于 2019-01-09T15:08:36.040 回答