问题标签 [react-native-ios]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ios - 将 react-native 升级到 0.39.0 及更高版本时出现重复符号错误
我正在尝试将 ios 应用程序更新为 react-native 0.39 及更高版本。一切都在 0.38.2 工作,但在那之后我遇到了ld: X duplicate symbols for architecture Y
问题。该应用程序本身是 swift、obj-c、网络嵌入等的混合体......
但它有一个由 swift 和 react-native 组成的共享扩展。
npm 和 pod 安装似乎没有问题。
经过一番研究,我找到了问题的原因,并尝试了一堆解决方案,但我仍然没有成功解决这个问题:
[...|similar duplicate symbol _CSSNodeList{something}]
duplicate symbol _CSSNodeListFree in:
~/Library/Developer/Xcode/DerivedData/....../Build/Products/Debug-iphonesimulator/React/libReact.a(CSSNodeList-10ACA1A52987016B.o)
~/Library/Developer/Xcode/DerivedData/....../Build/Products/Debug-iphonesimulator/React/libReact.a(CSSNodeList-5089F60B494D1C9C.o)
duplicate symbol _CSSNodeListAdd in:
~/Library/Developer/Xcode/DerivedData/....../Build/Products/Debug-iphonesimulator/React/libReact.a(CSSNodeList-10ACA1A52987016B.o)
~/Library/Developer/Xcode/DerivedData/....../Build/Products/Debug-iphonesimulator/React/libReact.a(CSSNodeList-5089F60B494D1C9C.o)
ld: 103 duplicate symbols for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
据我所知,我的共享扩展中的某处至少有 2 个对 CSSNodeList 的引用(并且可能在其他反应对象上)。但是看linked frameworks and libraries
or link binary with libraries
,我只能看到一个,如果我删除 libReact.a 并将其放回去,问题仍然存在。
试图清理项目、DerivedData、pods、node_modules (...) 但没有更多成功。
(如果有帮助,我正在运行 Xcode 8.2.1、Cocoapod 1.1.1、npm 4.0.5。)
谢谢你们的帮助,伙计们。
react-native - react-native : Native modules with same name for both android and iOS
I'm trying to build a react-native wrapper around our existing native android and ios SDK. I want to know if I can use the same class name and class methods for both the Android and iOS bridge modules? And how do I map the right module to be called for the right device?
For instance, for iOS :
For Android :
And in my js file, if I have something like this :
Which one will be executed? Is there a way where I could route it to the right function based on the device?
Thanks.
ios - 使用 ADB 在设备上运行 React Native (iOS)
在MacOS 上 iOS的 React Native 文档(0.40)“在设备上运行”adb reverse
中,它建议使用通过 USB 连接到开发服务器。这种方法实际上是推荐的方法。
我知道这适用于 Android,但我不知道它适用于 iOS 设备。每当我adb reverse tcp:8081 tcp:8081
按照文档尝试时,它都会给我error: no devices/emulators found
.
在 Google 上搜索在 iOS/iPhone 上使用 adb 后,我什么也没得到。我也没有找到任何关于 React Native 的问题,并且 Stack Overflow最接近的线程与使用 adb 调试有关,而不是使用 adb 通过 USB 运行 React Native(或通常是 iOS)。
有没有人有成功使用这种方法的经验?
react-native - 在 react-native iOS 原生模块中获取活动视图
我们如何在 react-native iOS 原生模块中获取当前活动视图?对于 Android,ReactContextBaseJavaModule
包括一个getCurrentActivity()
. iOS原生模块的类似方法是什么?
javascript - 检测 shift 键是否按下 React Native
如何检测当前是否按下了 shift 键?我有一个文本输入,当用户按下回车键时,如果他们当前没有按下回车键,我只想提交表单(与桌面上的 Facebook Messenger 相同的表单功能)。
这是我的文本输入:
这是处理程序:
javascript - 模态中的 React Native 导航栏
我想要一个包含导航栏的 Modal,纯粹是为了造型,而不是太多的功能。这意味着我不想有不同的路线。
我试过这个:
还有这个:
两者都会带来错误。第一次尝试有错误:Element type is invalid: expected a string or a class/function but got undefined
和第二次尝试:'undefined is not an object (evaluating navState.routeStack)'
。
我假设我不能添加导航栏,除非指定<Navigator>
也添加组件,这似乎是一种浪费,因为我不需要它的功能,只需要导航器的样式。
关于如何将导航栏添加到模式的任何想法?谢谢。
ios - `React/RCTBridgeModule.h` 文件未找到
在 xcode 上构建 react-native iOS 应用程序时出现此错误。
在 npm install 和 rpm 链接react-native-fs库后开始出现此错误。但是在网上搜索解决方案后,我注意到很多人在安装其他 react 原生库时遇到了同样的错误。
许多人建议的一个可能的解决方案是,在“构建设置”->“标题搜索路径”下添加以下内容。
$(SRCROOT)/../node_modules/react-native/React
- (递归)
但是这个解决方案没有运气,仍然得到同样的错误