如何修复 Azure 函数:Node.js 版本不兼容 (v16.4.1)

iho*_*ond 3 azure azure-functions

我已通读 文档并使用 VS Code 扩展创建了一个新的 azure 函数,仅使用它吐出的样板代码。

然后我在 local.settings.json 中进行本地设置(我在 Windows 上)

{
  "IsEncrypted": false,
  "Values": {
    "AzureWebJobsStorage": "",
    "FUNCTIONS_WORKER_RUNTIME": "node",
    "FUNCTIONS_EXTENSION_VERSION": "~4",
    "WEBSITE_NODE_DEFAULT_VERSION": "~16"
  }
}
Run Code Online (Sandbox Code Playgroud)

但我仍然得到节点版本不兼容的错误。

小智 6

确保您的Function core tools版本Function Run time version应该是4. *。

在此输入图像描述

如果版本不是 4.*。安装 Function Core Tools 最新版本 请在此处检查并安装所需版本node js如果您使用的是Windows,则版本应为 ( 16.9.1 ) 对于Linux,您可以使用 ( 16.13.0 )

Azure Functions 对 Node.js 16.x 的支持现已在 Azure Functions 运行时 4.0 中提供公共预览版。Node.js 16.13.0(当前的 LTS 版本)可在 Linux 函数应用上使用。Windows 函数应用目前支持版本 16.9.1,并将于 2021 年 12 月更新到 LTS 版本。请参阅此处

检查您的settings.json文件目标projectRuntime〜4并且projectLanguagejavascript

{
"azureFunctions.deploySubpath": ".",
"azureFunctions.postDeployTask": "npm install (functions)",
"azureFunctions.projectLanguage": "JavaScript",
"azureFunctions.projectRuntime": "~4",
"debug.internalConsoleOptions": "neverOpen",
"azureFunctions.preDeployTask": "npm prune (functions)"
}
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述