Angular部署到Azure静态Web应用程序不工作

kqqjbcuj  于 7个月前  发布在  Angular
关注(0)|答案(1)|浏览(100)

我正在尝试将一个angular应用程序部署到azure静态web应用程序。

node version = 16.18.1
npm version = 8.8.0

字符串
Azure使用gitub操作来构建和部署代码。
当我推送代码时,github actions开始构建代码并失败,并出现以下错误:

Using Node version: 
v16.20.2

Using Npm version:
8.19.4

Running 'npm install'...

npm ERR! Invalid version


我该如何解决这个问题?我该如何设置npm版本?

编辑:

在我的本地,我必须运行:

npm install --legacy-peer-deps


看起来它是因为这个而失败的。对此有什么解决方案吗?

ifsvaxew

ifsvaxew1#

当我试图在我的环境中实现相同的时候,得到了同样的错误。

  • 在本地将"@angular/core": "^7.0.0"安装为对等依赖
    Package.json:
{
  "name": "peerangularapp",
  "version": "0.0.0",
  "scripts": {
    "ng": "ng",
    "start": "ng serve",
    "build": "ng build",
    "watch": "ng build --watch --configuration development",
    "test": "ng test"
  },
  "private": true,
  "dependencies": {
    "@angular/animations": "^16.0.0",
    "@angular/common": "^16.0.0",
    "@angular/compiler": "^16.0.0",
    "@angular/core": "^16.0.0",
    "@angular/forms": "^16.0.0",
    "@angular/platform-browser": "^16.0.0",
    "@angular/platform-browser-dynamic": "^16.0.0",
    "@angular/router": "^16.0.0",
    "rxjs": "~7.8.0",
    "tslib": "^2.3.0",
    "zone.js": "~0.13.0"
  },
  "devDependencies": {
    "@angular-devkit/build-angular": "^16.0.1",
    "@angular/cli": "~16.0.1",
    "@angular/compiler-cli": "^16.0.0",
    "@types/jasmine": "~4.3.0",
    "jasmine-core": "~4.6.0",
    "karma": "~6.4.0",
    "karma-chrome-launcher": "~3.2.0",
    "karma-coverage": "~2.2.0",
    "karma-jasmine": "~5.1.0",
    "karma-jasmine-html-reporter": "~2.0.0",
    "typescript": "~5.0.2"
  },
  "peerDependencies": {
    "@angular/core": "^7.0.0"
  }
}

字符串


的数据
在我的例子中,我发现我得到了错误,因为我在package.json中的不同版本的依赖关系和对等依赖关系部分都有@angular/core依赖关系。

  • 为了解决这个问题,我不得不删除依赖项部分的@angular/core,并将对等依赖项中的@angular/core版本更改为16.0.0

(或)

  • 删除对等依赖项并添加到package.json中的依赖项,之后可以手动将这些dependencies添加到peer dependencies
    能够成功将Angular应用部署到静态Web应用:


入口:


运行已部署的应用程序:


相关问题