每当我关闭chrome的调试时,我都会看到
的红色屏幕SyntaxError:意外的标记'。'
一旦打开chrome调试器,所有错误都会消失。我尝试通过运行react-native bundle --platfrom ios --dev false --entry-file index.ios.js --bundle-output main.jsbundle
构建捆绑包并遇到同样的问题。从日志中我可以看到以下内容:
工作人员农场:收到现有儿童未知索引的消息。 这不应该发生! 2016年6月21日星期二22:17:13 GMT ReactNativePackager:SocketServer请求错误{message:'意外 token:punc(。)',filename:0,line:19,col:6,pos:964,
stack:'Error \ n at new JS_Parse_Error(eval at (/Users/aaa/bbb/src/ccc/node_modules/uglify-js/tools/node.js:22:1), .......
我无法弄清楚哪个'。'确切地说,打包者正在抱怨以及Chrome调试如何使错误消失。
答案 0 :(得分:2)
显然打包器不喜欢'new.target'语法(https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/new.target)。如果有人知道解决这个问题会很棒!
答案 1 :(得分:1)
当您不使用调试模式时,您的JS脚本将由JavascriptCore评估,否则由V8评估。 JavascriptCore是一个纯JS环境,因此只要FB没有为它进行填充,许多API就无法工作。因此,您可能需要找到另一种方式或一些polyfill来做到这一点。