已合并
fix: 将社区版本配置为 peerDependencies 解决 TS 类型检查报错。 #63
fix: 将社区版本配置为 peerDependencies 解决 TS 类型检查报错。 #63
已合并
zhoukc42创建于 9月3日
共 1 个文件变更+2-1
@@ -40,7 +40,8 @@
40 },40 },
41 "peerDependencies": {41 "peerDependencies": {
42 "react": "*",42 "react": "*",
43- "react-native": "*"43+ "react-native": "*",
44+ "react-native-linear-gradient": "3.0.0-alpha.1"
cpf-manager
cpf-managercpf-manager9月3日

【AI-Review】【严重】【基础代码问题】【代码逻辑错误】peerDependencies 精确锁定预发布版本,导致安装冲突

● 问题:第44行新增的 peerDependency "react-native-linear-gradient": "3.0.0-alpha.1" 使用精确版本号(无 ^/~/>= 前缀),且为预发布版本(alpha)。经查询 npm registry,react-native-linear-gradient 已发布更新的预发布版本 3.0.0-beta.0/3.0.0-beta.1/3.0.0-beta.2(next dist-tag 即指向 3.0.0-beta.2)。npm v7+ 默认严格校验 peerDependencies,若消费者项目已安装上述任一较新版本,npm install 会抛出 ERESOLVE could not resolve 错误导致安装失败。本仓库 example/package.json 的 dependencies 中即未声明 react-native-linear-gradient,其 fast-install-project 脚本只能依赖 --legacy-peer-deps 绕过校验。同文件中 react、react-native 均使用 "*",本条精确锁定与既有约定不一致。

● 影响:严重。消费者若使用 react-native-linear-gradient@3.0.0-beta.2 或未来稳定版 3.0.0,无法与 @react-native-ohos/react-native-linear-gradient@3.0.3-rc.2 共存,必须降级到 3.0.0-alpha.1 或使用 --legacy-peer-deps/overrides 绕过,显著增加集成成本。

● 建议:将版本改为范围形式,例如 "react-native-linear-gradient": ">=3.0.0-alpha.1",以兼容后续预发布与稳定版本;或采用 "^3.0.0-alpha.1" 以在兼容后续 3.x 预发布的同时匹配未来 3.x 稳定版。

likedislike
zhoukc42
zhoukc42
9月3日 评论:
44 },45 },
45 "publishConfig": {46 "publishConfig": {
46 "registry": "https://registry.npmjs.org/",47 "registry": "https://registry.npmjs.org/",