6.5.0
。目标是将其升级。我检查了Azure上可用的Node.js版本列表,最新的版本是8.9.4
。我阅读了一些有关此问题的文档,其中提到了两种方法。
1)package.json
将以下配置放入package.json
文件中:"engines": {
"node": "8.9.4"
}
我试过了,但没有成功。
2) 应用程序设置
进入应用程序设置,更新WEBSITE_NODE_DEFAULT_VERSION
的值为8.9.4
这种方法有以下三个问题:
- 在函数中记录
process.version
显示6.11.0
。我不知道为什么... - 实际上是Node.js
8.9.4
,但一些ES6特性如async arrow functions
会抛出错误。 - 每次运行
serverless deploy
命令都会重新创建服务并将WEBSITE_NODE_DEFAULT_VERSION
的值重置为默认值,即6.5.0
。
Azure Functions还有一个问题:当我部署带有更改的函数时,Azure Portal Web UI仍然显示旧函数(而非更新后的函数),但新版本的函数正在运行。奇怪...
如果你们中有人遇到这些问题,请告诉我,也许有人知道原因或解决方法。谢谢。