Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby-on-rails-4/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
React native 解除模拟文件的毒_React Native_Detox - Fatal编程技术网

React native 解除模拟文件的毒

React native 解除模拟文件的毒,react-native,detox,React Native,Detox,我正在使用解毒9.0.4和React native 0.57.2,并尝试模拟文件。 在他们之后,我在运行构建时添加了RN_SRC_EXT=e2e.jsenv变量,并添加了getSourceExts:()=>process.env.RN_SRC_EXT?process.env.RN_SRC_EXT.split(','):[]到我们的打包机配置(RN cli.config.js) 在我们将React Native升级到使用更新的Metro Bundler的0.57之前,这一切都很好,因此我相应地更改

我正在使用解毒9.0.4和React native 0.57.2,并尝试模拟文件。 在他们之后,我在运行构建时添加了
RN_SRC_EXT=e2e.js
env变量,并添加了
getSourceExts:()=>process.env.RN_SRC_EXT?process.env.RN_SRC_EXT.split(','):[]
到我们的打包机配置(
RN cli.config.js

在我们将React Native升级到使用更新的Metro Bundler的0.57之前,这一切都很好,因此我相应地更改了
rn cli.config.js

const blacklist = require('metro-config/src/defaults/blacklist');

module.exports = {
  resolver: {
    blacklistRE: blacklist([/react-native\/local-cli\/core\/__fixtures__.*/]),
    sourceExts: process.env.RN_SRC_EXT ? process.env.RN_SRC_EXT.split(',') : []
  }
};
但是
sourceExts
会导致常规构建失败


我如何解决这个问题

如果不明确指定,新语法似乎不接受JS文件,因此解决方案是在每种情况下都添加它

rn cli.config.js
文件:

const blacklist = require('metro-config/src/defaults/blacklist');

module.exports = {
  resolver: {
    blacklistRE: blacklist([/react-native\/local-cli\/core\/__fixtures__.*/]),
    sourceExts: process.env.RN_SRC_EXT ? process.env.RN_SRC_EXT.split(',') : []
  }
};
当您传递
RN\u SRC\u EXT
变量时(在我的例子中是在npm命令中),我还传递了'js'作为第二个扩展名:

"test:e2e-build": "RN_SRC_EXT='e2e.js,js' detox build -c ios.sim.release"

这个模拟配置在react native 0.61.5中不起作用,有什么想法吗?