gpt4 book ai didi

ios - 在 React Native 0.60 中未从 FBSDK 找到“React/RCTViewManager.h”文件

转载 作者:行者123 更新时间:2023-12-01 18:13:31 25 4
gpt4 key购买 nike

我最近将react-native升级到了0.60版本。因此,我的 Podfile 如下所示:

target 'myProject' do
# Uncomment the next line if you're using Swift or would like to use dynamic frameworks
# use_frameworks!

# Pods for myProject
# this is very important to have!
rn_path = '../node_modules/react-native'

pod 'React', :path => '../node_modules/react-native'
pod 'React-Core', :path => '../node_modules/react-native/React'
pod 'React-DevSupport', :path => '../node_modules/react-native/React'
...
pod 'FBSDKCoreKit'
pod 'FBSDKLoginKit'
pod 'FBSDKShareKit'

项目依赖项之一是 FBSDK,如上所示。问题是这个依赖依赖于React pod而不是React-Core,因此构建失败,因为使用路径React/Module找不到某些模块:

Xcode,文件 RCTFBSDKMessageDialog.h(来自 pod react-native-fbsdk):

#import <React/RCTBridgeModule.h>
#import <FBSDKShareKit/FBSDKShareKit.h>

@interface RCTFBSDKMessageDialog : NSObject <RCTBridgeModule>
@end

我收到错误:错误“React/RCTBridgeModule.h”文件未找到

如果我将其更改为 React-Core/React/RCTBridgeModule.h ,它就可以工作。

有什么想法可以让它在不重命名所有引用的情况下工作吗?

最佳答案

终于解决了。

问题出在 Podfile 上,最后一部分是从 ios 项目目标中删除 React(我在之前的 React 版本中有这个):

  post_install do |installer|
installer.pods_project.targets.each do |target|
if target.name == "React"
target.remove_from_project
end
end
end

我还必须添加这一行(来自 React Native Upgrade helper ):

require_relative '../node_modules/@react-native-community/cli-platform-ios/native_modules'

...

use_native_modules!

所以,总而言之,问题在于升级到0.60后,Podfile没有正确升级,因此React模块没有添加到iOS目标中。

关于ios - 在 React Native 0.60 中未从 FBSDK 找到“React/RCTViewManager.h”文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57871838/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com