[英]Bundlejs error on release build in Xcode (react-native)
出于某种原因,通过react-native构建应用程序的发行版时,出现以下错误。
***由于未捕获的异常'RCTFatalException:未处理的JS异常:t.typeof不是函数,因此终止了应用程序。 (在't.typeof(“ function” == typeof Symbol?Symbol.iterator:“ @@ iterator”)'中,'t.typeof'未定义)(/ Users /../ THEAPP.app/main.jsbundle: 11)”,原因:“未处理的JS异常:t.typeof不是函数。 (在't.typeof(“ function ...”
这是在我的bundlejs文件中发现上述错误的代码源:
!(function(e){"use strict";var r,t=e.babelHelpers={};t.typeof="function"==typeof Symbol&&"symbol"===t.typeof("function"==typeof Symbol?Symbol.iterator:"@@iterator")?
我已经尝试了发布构建的这两种方法:
react-native bundle --entry-file index.js --platform ios --dev false --bundle-output ios/main.jsbundle --assets-dest ios
对于这两个我都得到相同的错误。 当然,这是在将AppDelegate.m更改为以下代码之后:
//jsCodeLocation = [[RCTBundleURLProvider sharedSettings] jsBundleURLForBundleRoot:@"index" fallbackResource:nil];
jsCodeLocation = [[NSBundle mainBundle] URLForResource:@"main" withExtension:@"jsbundle"];
我还跟踪了某人对 Github问题的回答 ,并尝试了以下方法,但事后完全又遇到了另一个问题:
我做了:
npm uninstall -g babel-preset-env
npm install --save @babel/preset-env
将此添加到我的package.json文件中
"babel": { "presets": ["@babel/preset-env", "react-native"] }
并在我的根项目中创建一个.babelrc
文件,其内容如下:
{ "presets": ["@babel/preset-env", "react-native"] }
然后在Xcode构建上获取此代码:
我通过完全重启我的应用程序并使用以下方法解决了这个问题:
react-native init PROJECTNAME
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.