更新旧的 Angular nodeJS 项目的依赖关系解决问题和最佳实践?
Posted
技术标签:
【中文标题】更新旧的 Angular nodeJS 项目的依赖关系解决问题和最佳实践?【英文标题】:Dependency resolution issues and best practices for updating an old angular nodeJS project? 【发布时间】:2021-10-26 04:41:24 【问题描述】:在几个月没有工作之后,我正在返回一个项目,并想知道是否有人对更新和维护过时的 Angular 项目的最佳方法有什么好的建议。我很迷茫,想知道专家开发人员将如何处理这个问题。
在过去,当我一直致力于它时,我使用 NPM 更新或升级 命令保持最新状态,并且我修复了从更新到更新发生的重大更改。这次我尝试强制执行这些更新命令,结果我破坏了我的代码,不得不从更早的迭代中重新开始(谢谢 github)。
所以现在我在所有方面都落后了几个版本,不太确定如何进行。我一直在尝试为需要更新的每个特定版本的补丁查找一些文档,但我不知道从哪里开始或优先考虑什么。我知道我不能用一个简单的 npm update 命令一次性更新它们。
当我尝试进行 NPM 安装时,我得到:
npm 错误!代码 ERESOLVE
npm 错误! ERESOLVE 无法解析依赖树
或者如果我尝试更新 NPM:npm 错误!找到:mongoose@6.0.1
npm 错误! node_modules/mongoose
npm 错误! mongoose@"^6.0.0" 来自根项目
npm 错误!
npm 错误!无法解析依赖:
npm 错误! peer mongoose@"^5.2.1" 来自 mongoose-unique-validator@2.0.3
我应该担心的第一个包是什么?这里有什么重要的事情要记住?我不确定该怎么做,非常感谢任何建议。谢谢。
【问题讨论】:
你检查过this指南吗? 您使用的是什么版本的node
和npm
?你package.json
的内容是什么?
@Trott 抱歉,一直在回避这个项目,在我回到这个项目之前,我还有其他一些与计算机相关的问题需要解决。 - "engines": "node": "10.16.0", "npm": "6.8.0" 这些年来我有很多包,因为我使用这个应用程序来了解 NPM 以及包(例如 chalk)如何工作。
【参考方案1】:
我面临同样的问题。我通过将猫鼬版本降级为“^5.2.1”来解决它。希望有用
【讨论】:
这似乎有帮助,谢谢。我编辑了包 json 以反映这个 mongoose 版本,我运行了一个失败的 NPM i,NPM 告诉我强制或输入 npm i --legacy-peer-deps软件包似乎已更新。现在我正在努力让这个项目链接到一个旧的托管 heroku 版本,以便我可以更新它,所以我尝试安装 heroku CLI,我做了一个 brew tap heroku/brew && brew install heroku 失败了,现在我正在更新xcode 的最新命令行工具。无论哪种方式,我的应用程序都可以在本地运行,所以谢谢。【参考方案2】:npm update
只会引导您获得最新的可用依赖项,因此您应该将当前的 Angular 版本逐渐升级到您喜欢的版本,以保持您的代码之旅永续(您最好使用Yarnpkg
)
Angular 更新指南:https://update.angular.io/
【讨论】:
以上是关于更新旧的 Angular nodeJS 项目的依赖关系解决问题和最佳实践?的主要内容,如果未能解决你的问题,请参考以下文章
Angular 2 Universal 中的身份验证,nodejs
在后端使用NodeJS的Put方法不更新Angular7中的MongoDB