HarmonyOS鸿蒙Next优化建议-@react-native-ohos/react-native-screens三方库文档与@react-navigation/native-stack文档说明冲突
HarmonyOS鸿蒙Next优化建议-@react-native-ohos/react-native-screens三方库文档与@react-navigation/native-stack文档说明冲突 【问题描述】:@react-native-ohos/react-native-screens三方库文档的说明与@react-navigation/native-stack的说明存在冲突
【问题现象】:@react-native-ohos/react-native-screens侧说明需卸载@react-navigation/native-stack,但@react-navigation/native-stack侧说明需与@react-native-ohos/react-native-screens配合使用。实际使用存在问题,让开发者无法定位问题根源是三方库能力缺失还是依赖存在问题

【版本信息】:
@react-native-oh/react-native-harmony: 0.77.70
【复现代码】:无复现代码
更多关于HarmonyOS鸿蒙Next优化建议-@react-native-ohos/react-native-screens三方库文档与@react-navigation/native-stack文档说明冲突的实战教程也可以访问 https://www.itying.com/category-93-b0.html
尊敬的开发者,您好,关于您反馈的问题:
该问题涉及到react-native-screens与@react-navigation/native-stack的不同组合方式说明:
- 在RN 0.77/0.82框架版本使用@react-native-ohos/native-stack和@react-native-ohos/react-native-screens组合
- 在RN 0.72框架版本中使用@react-native-ohos/native-stack和社区react-native-screens组合方案;或社区@react-navigation/native-stack和@react-native-ohos/react-native-screens组合方案
而在[@react-native-ohos/react-native-screens](https://gitcode.com/CPF-RN/usage-docs/blob/master/zh-cn/react-native-oh-tpl-react-native-screens.md)文档中,其说明的版本为3.34.1,是RN 0.72框架版本中@react-native-ohos/react-native-screens的对应版本,该版本下是使用的@react-navigation/native-stack的组合,因此会提示您需要卸载@react-native-oh-tpl/native-stack,[@react-native-ohos](/user/react-native-ohos)/native-stack 库
更多关于HarmonyOS鸿蒙Next优化建议-@react-native-ohos/react-native-screens三方库文档与@react-navigation/native-stack文档说明冲突的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html
这个更像文档维护问题,但你可以先按实际依赖关系来判断:@react-native-ohos/react-native-screens 是 screens 能力适配,@react-navigation/native-stack 是导航栈实现,两者在 RN 生态里通常是配合关系,不应简单理解成互斥。
如果文档 A 写“卸载 native-stack”,文档 B 又要求配合使用,建议把冲突链接、版本号、package.json 依赖和实际报错整理成一个最小复现提交到对应 GitCode issue/工单。临时工程里不要同时按两份互斥说明改,先固定一套官方当前推荐版本,再逐项验证 install、编译和运行。
学习,
可以通过提交工单进行反馈,
该冲突源于@react-native-ohos/react-native-screens(鸿蒙适配版)与@react-navigation/native-stack的文档对enableFreeze、detachInactiveScreens等属性默认值及行为描述不一致。鸿蒙版基于ArkUI实现,与原生RN的Android/iOS行为存在差异。应以鸿蒙三方库文档为准,因为其适配了鸿蒙Next的UI线程与内存管理机制,而native-stack文档基于通用RN环境编写。
该冲突的根源是文档适用平台不同。@react-navigation/native-stack 的文档基于标准 React Native(iOS/Android)环境,未覆盖 HarmonyOS 的适配差异;@react-native-ohos/react-native-screens 则针对鸿蒙原生能力描述约束。在鸿蒙生态中,实际行为应以 @react-native-ohos 的适配文档为准。若该文档声明需卸载 native-stack,说明当前版本的 @react-native-ohos/react-native-screens 尚未完整实现 native-stack 所需接口,或要求改用其他导航栈。因此问题的根源是三方库在鸿蒙上的适配范围与上游文档不一致,而非开发者的依赖配置错误。
