HarmonyOS鸿蒙Next中@react-native-ohos/async-storage在npm中不存在对应的2.3.0版本

HarmonyOS鸿蒙Next中@react-native-ohos/async-storage在npm中不存在对应的2.3.0版本 【问题描述】:https://gitcode.com/OpenHarmony-RN/usage-docs/blob/master/zh-cn/react-native-async-storage-async-storage.md 这个库有适配0.82,但是在npm中不存在对应的2.3.0版本

【问题现象】:

cke_1751.png

cke_2136.png

cke_2605.png


更多关于HarmonyOS鸿蒙Next中@react-native-ohos/async-storage在npm中不存在对应的2.3.0版本的实战教程也可以访问 https://www.itying.com/category-93-b0.html

8 回复

开发者您好,当前@react-native-ohos/async-storage三方库的2.3.0版本:2.3.0-beta.1已发布,本地验证能正常运行以及读写数据,请进入npm中找到2.3.0-beta.1版本验证是否满足您的场景诉求。

更多关于HarmonyOS鸿蒙Next中@react-native-ohos/async-storage在npm中不存在对应的2.3.0版本的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


我这边实测 @react-native-ohos/async-storage 当前没有正式 2.3.0,但有 2.3.0-beta.1,latest 也指向它。可先用:npm i @react-native-ohos/async-storage@2.3.0-beta.1。如果项目不接受 beta,建议回退到 2.2.1。

存在的

再等下,2.3.0,beta刚提交1天。文档超前了。

这个问题本质上不是你 npm 环境的问题,而是:

HarmonyOS RN 文档里的版本号,和实际 npm 已发布版本不一致。

你截图里的:

npm install @react-native-ohos/async-storage@2.3.0

报错:

No matching version found

说明 npm 仓库里根本没有发布 2.3.0 这个版本。

你去 npm 页面看到实际只有:

  • 2.2.1
  • 1.21.1
  • 1.21.1-rc.3

这就已经证明:

文档版本写超前了,但包并没真正发布。

所以这不是你本地的问题,也不是 node 版本的问题。

正确结论:

  • 文档适配表 ≠ npm 实际已发布版本
  • OpenHarmony-RN 某些文档会提前写“规划版本”
  • npm 上不存在的版本无法安装

你现在应该这样处理:

直接安装当前已发布的最新版:

npm install @react-native-ohos/async-storage@2.2.1

或者:

yarn add @react-native-ohos/async-storage@2.2.1

不要使用文档里的 2.3.0。

另外还有一个关键点:

Harmony RN 的第三方库很多并不是严格按 semver 管理的,尤其 OpenHarmony-RN 生态里:

  • 文档版本
  • GitCode Release
  • npm 发布版本

经常不同步。

所以以后优先以 npm 实际版本为准,而不是文档表格。

建议排查顺序:

  1. 先看 npm 是否真实存在版本
  2. 再看 gitcode release
  3. 最后才参考文档

像你前面那个:

@react-native-ohos/react-native-push-notification

也是同类问题:

  • 文档有
  • npm 没发布
  • 实际不可安装

并不是你的 npm 或 node 出问题。

还有一个容易踩坑的点:

Harmony RN 文档里很多:

npm install xxx

实际上源码在 GitCode release,npm 未同步。

这种情况只能:

  • 使用 git 地址安装
  • 或下载 release 本地依赖
  • 或换已发布版本

例如:

npm install git+https://gitcode.com/openharmony-sig/rntpc_async_storage.git

(具体地址以仓库 release 为准)

所以你这个问题最终答案就是:

不是 node18 问题;不是 npm 问题;不是你环境问题;而是 OpenHarmony-RN 文档与 npm 实际发布版本不一致导致的。

文档有问题。

在HarmonyOS NEXT中,@react-native-ohos/async-storage 的 npm 版本号通常对应 OpenHarmony 适配版本。若 npm 缺少 2.3.0,可检查 ohpm 仓库或 HarmonyOS 三方库索引中是否存在相同功能版本。该包版本号命名可能与 React Native 社区版本不同步,建议直接查阅官方文档确认适配版本映射关系。

@react-native-ohos/async-storage 在 npm 上的确不存在 2.3.0 版本。该库是基于社区 react-native-async-storage 的 OpenHarmony 适配版,文档中提及的版本号,通常是依据上游 React Native 版本(如 0.82)的内部映射,并非与 npm 发布版本严格对应。
当前 npm 上可见的版本为 1.x 系列(如 1.0.01.0.1 等),可直接安装最新版。
若确实需要与文档一致的版本,可从 Git 仓库直接拉取对应分支或 tag 安装。

回到顶部