Angular 与 Yarn 的零安装兼容吗?

问题描述 投票:0回答:1

我在启动一个新项目后遇到错误,这让我怀疑我是否正确阅读了网上获取的信息。

按照 Angular 和其他来源关于使用 Yarn 作为 packkage 管理器的说明,我运行了以下命令:

npm install -g @angular/cli typescript less less-plugin-clean-css
ng version
ng config -g cli.packageManager yarn
ng new my-app
yarn add @angular/material @angular/cdk
yarn install                            
ng serve                            

此时,在确认 Angular 版本确实是我想要的版本后,我认为 Angular CLI 生成的应用程序会简单地运行。但是,我收到此错误消息:

节点包可能未安装。尝试使用“yarn install”进行安装。 错误:找不到“@angular-devkit/build-angular:dev-server”构建器的节点包。

已经运行建议的命令后,我返回到 Yarn 文档 仔细检查命令的含义。

我现在想知道yarn安装的包是否与Angular期望的兼容。我很惊讶地发现这方面的信息很少。几乎每个搜索结果都提到使用

npm install
安装软件包。如果是这样,我想知道使用纱线有什么意义。

我显然缺少一些东西来理解 Angular 19 应该如何与 Yarn 一起工作。我的主目录中的 .angular-config.json 文件具有以下内容:

{
  "$schema": "./node_modules/@angular/cli/lib/config/schema.json",
  "cli": {
    "packageManager": "yarn",
    "analytics": false
  },
  "version": 1,
  "projects": {}
}
angular yarnpkg-v2
1个回答
0
投票

在这上面花了很多时间,我开始明白 Angular 只需要

node_modules
存在于磁盘上。我的标题问题的答案是否定的。

解决方案:使用

ng new
创建的项目结束时没有
.yarnrc.yml
文件。需要创建此文件,并且需要一行
nodeLinker: node-modules
,以便 Yarn 知道将所需的文件保留在所需的
node_modules
目录中。

旁注:令人遗憾的是,即使是 2024 年发表的文章仍然引用了 Yarn 1 或已弃用的做事方式。

© www.soinside.com 2019 - 2024. All rights reserved.