Invalid regular expression: /(.\fixtures.|nodemodules[]react[]dist[].|website\nodemodules.|heapCapture\bundle.js|.\tests.)$/: Unterminated character class
类似问题都是
js闪退、nodejs版本问题
目前认为这个错误是node.js 12.11.0 版本及以上才会出现,我的版本是12.13.1,所以不幸躺枪,一般来说我们回退到12.10.0版本就可以解决。
如果你不想回退node.js的版本,还可以通过修改正则表达式来解决:
nodemodules\metro-config\src\defaults\blacklist.js
1
原来:
var sharedBlacklist = [
/nodemodules[/\]react[/\]dist[/\]./,
/website\/node_modules\/./,
/heapCapture\/bundle.js/,
/.\/tests\/./
];
1
2
3
4
5
6
正则表达式修改一下即可,每个中括号里面的第一位加一个转义,改为:
var sharedBlacklist = [
/nodemodules[\/\]react[\/\]dist[\/\].*/,
/website\/nodemodules\/./,
/heapCapture\/bundle.js/,
/.\/tests\/.*/
];