Azure DevOps 静态 Web 应用程序自动升级其节点和 npm 版本

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

最近在将reactjs应用程序部署为azure静态Web应用程序时, 自动升级node和npm导致与peer相关的错误 依赖性。

以前的版本-

使用Node版本:v14.19.1

使用Npm版本:6.14.16

当前版本-

使用Node版本:v16.18.0

使用Npm版本:8.19.2

npm 警告 ERESOLVE 覆盖对等依赖

npm WARN 解析时:@date-io/[电子邮件受保护]

发现 npm 警告:[电子邮件受保护]

npm 警告node_modules/date-fns

来自根项目的 npm WARN date-fns@"^2.29.3"

npm 警告另外 2 个(@mui/x-date-pickers、@date-io/date-fns)

npm 警告

npm 警告无法解决依赖关系:

npm 警告对等 date-fns@"2.0.0-alpha.27" 来自 @date-io/[电子邮件受保护]

npm 警告node_modules/@date-io/date-fns

npm 警告 @date-io/date-fns@"1.1.0" 来自 [电子邮件受保护]

npm 警告node_modules/material-table

解决此问题的正确解决方案是什么,因为我尝试添加 yml 文件中的任务升级节点版本,它不起作用

node.js reactjs npm azure-pipelines
2个回答
1
投票

node.js由项目本身决定。无法通过添加任务在 YAML Pipeline 中设置。

请参阅此文档:配置 Azure 静态 Web 应用程序

您可以在项目中添加一个文件名:staticwebapp.config.json,并添加以下代码:

{
  "platform": {
    "apiRuntime": "node:14"
  }
}

例如:

enter image description here

或者您可以在 Package.json 文件中定义 Engines 字段。

例如:

{
 ...
  "engines": {
      "npm": "^6.14.17",
      "node": "^v14.20.1"
  },
....
}

结果:

enter image description here


0
投票

您基本上可以将其添加为环境:

- name: Build And Deploy
  id: builddeploy
  uses: Azure/static-web-apps-deploy@v1
  env:
    NODE_VERSION: 20.11.1
    NPM_CONFIG_LEGACY_PEER_DEPS: true # Also if --legacy-peer-deps needed.
  with:
    azure_static_web_apps_api_token: ${{ secrets.AZURE_STATIC_WEB_APPS_API_TOKEN_GRAY_OCEAN_0E8C92D0F }}
© www.soinside.com 2019 - 2024. All rights reserved.