已合并
fix: 将社区版本配置为 peerDependencies 解决 TS 类型检查报错。 #63
zhoukc42创建于 9月3日
fix: 将社区版本配置为 peerDependencies 解决 TS 类型检查报错。 #63
已合并
共 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" | ||
| 44 | }, | 45 | }, |
| 45 | "publishConfig": { | 46 | "publishConfig": { |
| 46 | "registry": "https://registry.npmjs.org/", | 47 | "registry": "https://registry.npmjs.org/", |
【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(nextdist-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 稳定版。