安装react-html-table-to-excel报ERESOLVE依赖冲突该如何解决?
安装react-html-table-to-excel依赖报错解决方案
原始报错信息
PS C:\Users\Dev03\OneDrive\Desktop\Project\usermanagement> npm install react-html-table-to-excel npm ERR! code ERESOLVE npm ERR! ERESOLVE 无法解析依赖树 npm ERR! 解析项目 usermanagement@0.1.0 时出现问题: npm ERR! 已找到 react@17.0.2 版本依赖: npm ERR! node_modules/react npm ERR! 根项目依赖的react版本为 "^17.0.2" npm ERR! npm ERR! 无法解析依赖需求: npm ERR! react-html-table-to-excel@2.0.0 要求的对等依赖react版本为 "^15.x.x" npm ERR! node_modules/react-html-table-to-excel npm ERR! 根项目要安装的react-html-table-to-excel版本为 "*" npm ERR! npm ERR! 你可以修复上游依赖冲突,或者在执行命令时追加 --force 或 --legacy-peer-deps 参数,来接受一个不正确(且可能存在损坏风险)的依赖解析结果。 npm ERR! npm ERR! 完整报告可查看 C:\Users\Dev03\AppData\Local\npm-cache\eresolve-report.txt npm ERR! 本次运行的完整日志位于: npm ERR! C:\Users\Dev03\AppData\Local\npm-cache_logs\2021-09-27T11_45_28_139Z-debug.log
错误核心原因
报错属于对等依赖版本不匹配问题:你当前项目安装的React版本为17.0.2,而react-html-table-to-excel@2.0.0的对等依赖要求为react@^15.x.x,npm v7及以上版本默认会严格校验对等依赖的版本匹配性,不符合要求就会阻断安装抛出ERESOLVE错误。
解决方案
- 方案1:临时跳过依赖校验(快速解决,有一定运行风险)
可以在安装命令后追加参数忽略对等依赖检查,优先推荐使用--legacy-peer-deps参数,兼容性更好风险更低:
如果上述命令仍然报错,可以使用强制安装参数:npm install --save react-html-table-to-excel --legacy-peer-deps
注意:该方案仅跳过安装阶段的校验,安装完成后如果导出功能运行异常,说明该包确实不兼容React17版本,需要采用下面的方案2npm install --save react-html-table-to-excel --force - 方案2:替换适配性更好的导出依赖(长期稳定方案)
react-html-table-to-excel已经多年未更新维护,对高版本React兼容性差,建议更换为更活跃的导出工具库xlsx(SheetJS),自主实现表格导出Excel的逻辑,兼容React16+所有版本,功能扩展性也更强。
内容的提问来源于stack exchange,提问作者Akilagopal
相关产品推荐
相关产品推荐

