Answers:
删除节点模块,然后运行npm install
(或更好地执行),在所有内容下载完成后,运行react-native upgrade
该命令,您可以选择使用模板文件替换旧文件,方法是将本机依赖项重新链接到react-native应该解决您的问题。当然,不要忘记用Xcode清理项目。
react-native upgrade
所有构建设置后,这些设置都被删除了。
xcode Product-> Scheme-> Manage Schemes在目标上单击“ +”以选择“ React”并设置React已共享。
对于所有使用React Native 0.40.0或更高版本的用户,Header Imports与RN 0.40.0相比都有重大变化,并导致许多.h文件未找到错误。react-native-git-upgrade
在调试时为我解决了该问题,但在发布/归档中构建失败。
我正在将RN 0.42.3与cocoapods和Xcode 8.2.1一起使用
要完全解决此问题,请转到Xcode>产品>方案>编辑方案>
现在清理项目并构建
其他建议都没有解决我的错误,但是这个建议做到了。
ios/Podfile
在您的react-native应用程序内部创建一个文件,其内容如下:
# You Podfile should look similar to this file. React Native currently does not support use_frameworks!
source 'https://github.com/CocoaPods/Specs.git'
platform :ios, '8.0'
target '<YOUR_APP_NAME>' do
# Fixes required for pod specs to work with rn 0.42
react_native_path = "../node_modules/react-native"
pod "Yoga", :path => "#{react_native_path}/ReactCommon/yoga"
pod "React", :path => react_native_path, :subspecs => [
'Core',
'RCTActionSheet',
'RCTAnimation',
'RCTGeolocation',
'RCTImage',
'RCTLinkingIOS',
'RCTNetwork',
'RCTSettings',
'RCTText',
'RCTVibration',
'RCTWebSocket'
]
pod 'GoogleMaps' # <~~ remove this line if you do not want to support GoogleMaps on iOS
# when not using frameworks we can do this instead of including the source files in our project (1/4):
# pod 'react-native-maps', path: '../../'
# pod 'react-native-google-maps', path: '../../' # <~~ if you need GoogleMaps support on iOS
end
pod install
从ios文件夹中运行命令。
重新启动XCode,错误应该消失了。
对我有效的解决方案是共享React
方案。
如果您没有React方案,请通过创建一个新方案Selecting scheme menu -> Manage Scheme -> + -> choose React
,然后将React方案标记为Shared
另外,如果您使用Xcode 10,请转到File -> Project Settings
并选择“旧版”构建系统
我通过以下步骤解决了这个问题:
React.xcodeproj
从Libraries
该项目的根目录。SaleKit
)TARGETS
Build Phases
Target Dependencies
添加下拉菜单中React
对于我在ReactNative“ 0.54.2”中的情况,我使用以下解决方案解决了它
在Xcode select中Product->Scheme->Manage Schemes
,取消选中“ YourProject” -tvOS,将其设置为“不共享”
在项目的基本目录中,我运行:
node_modules/react-native/packager/packager.sh --reset-cache
结果是:
Scanning 554 folders for symlinks in /Users/..../work/..../react_tutorial/AwesomeProject/node_modules (15ms)
┌────────────────────────────────────────────────────────────────────────────┐
│ Running packager on port 8081. │
│ │
│ Keep this packager running while developing on any JS projects. Feel │
│ free to close this tab and run your own packager instance if you │
│ prefer. │
│ │
│ https://github.com/facebook/react-native │
│ │
└────────────────────────────────────────────────────────────────────────────┘
Looking for JS files in
/Users/..../work/...../react_tutorial/AwesomeProject
Loading dependency graph... ERROR Packager can't listen on port 8081
Most likely another process is already using this port
Run the following command to find out which process:
lsof -i :8081
我发现当另一个打包程序进程正在运行时,程序包管理器无法运行。
我发现该进程运行:
lsof -i :8081
比我kill 9 ...
的过程。
然后,我关闭Xcode,然后运行:
npm install
并再次启动Xcode,从这一刻开始,一切都会按预期进行!!
尝试以下方法:
我遇到了同样的问题。然后我删除了节点。尝试使用这些步骤
然后进行构建并查看
对我而言
#import <React/RCTBundleURLProvider.h>
#import <React/RCTRootView.h>
通过
#import <RCTBundleURLProvider.h>
#import <RCTRootView.h>
在AppDelegate.m文件中工作。
我已经完成了上面提到的所有答案。
这是为我工作的解决方案:
第1步:
跑:
npm install react-native-fcm --save
这导致在项目中的node_modules> react-native-fcm下创建目录
第2步:
您需要'$(SRCROOT)/../node_modules/react-native-fcm/ios'
在构建设置中添加到标题搜索路径。
这两个步骤可帮助我消除错误。
有关更多详细信息,您可以通过以下链接:
就我而言,我无法删除node_modules并重新安装,我也无法这样做,react-native-git-updgrade
或者react-native upgrade
因为我想继续使用RN-0.59,因为.60导致我的依赖关系出现问题。
无论如何,我的情况是我丢失了“ React / RCTBundleURLProvider.h”文件。我已经在模式中使用了React。它不在我的库目录中。我检查了目标的构建设置。
在目标依赖项内部,我在那里也有React。
我删除了“ React”目标依赖项,然后重新添加。清理构建文件夹,重新构建项目。有效。
我正在使用React Native 0.61。我创建了一个共享扩展名,并收到此错误。我需要更换:
#import "RCTBundleURLProvider.h"
与
#import "React/RCTBundleURLProvider.h"
您需要在终端运行中安装react native
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
然后
brew install node
brew install watchman
npm install -g react-native-cli
来源:https :
//facebook.github.io/react-native/docs/getting-started.html