无法读取未定义的属性'canShow' - React-Native-FBSDK - iOS

时间:2017-03-29 17:56:12

标签: ios facebook react-native

我一直在尝试按照此处为iOS设置的确切路径将React-Native-FBSDK安装到我的项目中: https://developers.facebook.com/docs/react-native/getting-started

但每当我去实际使用ShareDialog时,我都会收到错误消息Cannot read property 'canShow' of undefined。我现在已经完成了3次步骤,每次都有相同的结果。还有什么我必须做的才能真正能够将它与React-Native一起使用吗?

React-Native 0.42

React-Native-FBSDK 0.5

1 个答案:

答案 0 :(得分:2)

好的,我发现了为什么会这样。针对react-native的Facebook SDK网站上的文档是错误的。您需要遵循github repo https://github.com/facebook/react-native-fbsdk中的自述文件。

他们在自述文件中没有提到的是,如果您尝试将SDK安装到Project而不是文档文件夹中,则有一种方法。如果您是团队合作或使用多台计算机开发应用程序,您可能希望使用React-Native Project执行此操作。将它放入您的项目只是允许您克隆您的仓库和npm i以及您在用于开发的每台机器上安装sdk,然后确保xCode具有正确的路径。

因此,当您浏览iOS步骤并告诉您下载并将sdk移动到~/Documents/FacebookSDK时,您实际上可以将其直接放在您的应用程序框架下的应用程序中的ios目录中。 (如果它不是Frameworks文件夹,只需制作一个)然后只需按照其余步骤操作,只要它提到~/Documents/FacebookSDK,只需使用/ios/Framworks中的文件。

请注意,如果您决定将SDK放入项目中,它会将您的回购大小增加50-100MB。从SDK中删除Samples文件夹也很好,因为它们只占用空间而不需要。