我今天才第一次遇到类似的错误。它出现在中\node_modules\metro-config\src\defaults\blacklist.js
,其中有一个需要更改的无效正则表达式。我更改了以下的第一个表达式sharedBlacklist
:
var sharedBlacklist = [
/node_modules[/\\]react[/\\]dist[/\\].*/,
/website\/node_modules\/.*/,
/heapCapture\/bundle\.js/,
/.*\/__tests__\/.*/
];
至:
var sharedBlacklist = [
/node_modules[\/\\]react[\/\\]dist[\/\\].*/,
/website\/node_modules\/.*/,
/heapCapture\/bundle\.js/,
/.*\/__tests__\/.*/
];
从Github的查询中得到了其他答案。-“这是由节点v12.11.0引起的,降级到v12.10.0即可解决。” 是Leo.Lei。而且我还需要查看它是否有效。 (5认同)
Charles.. 40
这是由节点v12.11.0引起的,原因是它处理常规位置的方式有两种方法可以解决此问题
方法一
您可以降级到节点v12.10.0,这将应用正确的方法来处理解析错误
方法二
您可以通过更改以下位置的文件来正确终止正则表达式:
\node_modules\metro-config\src\defaults\blacklist.js
从:
var sharedBlacklist = [ /node_modules[/\\]react[/\\]dist[/\\].*/, /website\/node_modules\/.*/, /heapCapture\/bundle\.js/, /.*\/__tests__\/.*/ ];
至:
var sharedBlacklist = [ /node_modules[\/\\]react[\/\\]dist[\/\\].*/, /website\/node_modules\/.*/, /heapCapture\/bundle\.js/, /.*\/__tests__\/.*/ ];
nelajala nel.. 5
I had the same problem I altered the E:\NodeJS\ReactNativeApp\ExpoTest\node_modules\metro-config\src\defaults\blacklist.js in my project
from
var sharedBlacklist = [ /node_modules[/\\]react[/\\]dist[/\\].*/, /website\/node_modules\/.*/, /heapCapture\/bundle\.js/, /.*\/__tests__\/.*/ ];
to
var sharedBlacklist = [ /node_modules[\/\\]react[\/\\]dist[\/\\].*/, /website\/node_modules\/.*/, /heapCapture\/bundle\.js/, /.*\/__tests__\/.*/ ];
this worked perfectly for me
我今天才第一次遇到类似的错误。它出现在中\node_modules\metro-config\src\defaults\blacklist.js
,其中有一个需要更改的无效正则表达式。我更改了以下的第一个表达式sharedBlacklist
:
var sharedBlacklist = [
/node_modules[/\\]react[/\\]dist[/\\].*/,
/website\/node_modules\/.*/,
/heapCapture\/bundle\.js/,
/.*\/__tests__\/.*/
];
至:
var sharedBlacklist = [
/node_modules[\/\\]react[\/\\]dist[\/\\].*/,
/website\/node_modules\/.*/,
/heapCapture\/bundle\.js/,
/.*\/__tests__\/.*/
];
这是由节点v12.11.0引起的,原因是它处理常规位置的方式有两种方法可以解决此问题
方法一
您可以降级到节点v12.10.0,这将应用正确的方法来处理解析错误
方法二
您可以通过更改以下位置的文件来正确终止正则表达式:
\node_modules\metro-config\src\defaults\blacklist.js
从:
var sharedBlacklist = [ /node_modules[/\\]react[/\\]dist[/\\].*/, /website\/node_modules\/.*/, /heapCapture\/bundle\.js/, /.*\/__tests__\/.*/ ];
至:
var sharedBlacklist = [ /node_modules[\/\\]react[\/\\]dist[\/\\].*/, /website\/node_modules\/.*/, /heapCapture\/bundle\.js/, /.*\/__tests__\/.*/ ];
I had the same problem I altered the E:\NodeJS\ReactNativeApp\ExpoTest\node_modules\metro-config\src\defaults\blacklist.js in my project
from
var sharedBlacklist = [ /node_modules[/\\]react[/\\]dist[/\\].*/, /website\/node_modules\/.*/, /heapCapture\/bundle\.js/, /.*\/__tests__\/.*/ ];
to
var sharedBlacklist = [ /node_modules[\/\\]react[\/\\]dist[\/\\].*/, /website\/node_modules\/.*/, /heapCapture\/bundle\.js/, /.*\/__tests__\/.*/ ];
this worked perfectly for me
使用某些NPM和Node版本的Metro出现问题。
您可以解决更改文件中某些代码的问题\node_modules\metro-config\src\defaults\blacklist.js
。
搜索此变量:
var sharedBlacklist = [
/node_modules[/\\]react[/\\]dist[/\\].*/,
/website\/node_modules\/.*/,
/heapCapture\/bundle\.js/,
/.*\/__tests__\/.*/
];
并更改为:
var sharedBlacklist = [
/node_modules[\/\\]react[\/\\]dist[\/\\].*/,
/website\/node_modules\/.*/,
/heapCapture\/bundle\.js/,
/.*\/__tests__\/.*/
];
请注意,如果您运行npm安装或yarn安装,则需要再次更改代码。