从AWS和Serverless框架开始,我对节点版本感到困惑:
AWS帮助站点称(2016年3月21日至2016年)
AWS Lambda支持以下运行时版本: Node.js: 0.10.36
因此,我在本地计算机上安装了Node.js v0.10.36。通过以下方式安装最新(v0.4.2)无服务器框架
npm install serverless -g它提出以下警告:
npm警告引擎无服务器@0.4.2:匮乏:{“节点”:“>=4.0”}(当前:{“节点”:“0.10.36”,"npm":"1.4.28"})
我认为在本地拥有与AWS相同的版本可能有助于创建一个一致的开发环境.我错了吗?我应该在本地运行什么Node.js版本才能最大限度地利用无服务器的优势?
发布于 2016-03-21 18:46:15
无服务器框架需要Node.js v4.0或更高版本。v4.x或v5.x行中的任何版本的Node.js都应该可以工作。
您是正确的,AWS目前只支持Node.js v0.10.36。在Node.js v4.0上构建无服务器框架的决定是因为预期AWS最终将支持Node.js v4.0或更高版本。
在为AWS开发代码时,您应该继续只使用与Node.js v0.10.36兼容的特性。如果您对框架做出任何贡献,您可以使用Node.js特性在v4.0+中可用。
另一个选择是使用巴氏将您的ES2015代码转换为AWS。这允许您在ES2015中进行开发,而不必等待AWS正式支持它。每次使用优化插件使用Serverless框架进行部署时,都可以自动完成此操作。
更新:现在存在一个新选项,即无服务器Babel运行时。这超出了Optimizer所做的一步,并在运行时本身使用Babel。
更新2: AWS现在支持Node.js v4.3。
发布于 2016-05-21 15:38:54
如果您是从一个全新的、新鲜的项目开始的,我将非常避免从节点0.10.x开始。目前,该版本刚刚收到了重要的安全修正,而且只需要5个月(直到2016年10月)。
Node.js采用了通用的长期支持(LTS)模式,以保持发布的及时性和稳定性。节点的以下是当前的LTS计划。
我强烈建议从版本4或5开始,这取决于您对更改的兴趣和项目的最新更新。您将能够在0.10/0.12版本中利用许多新特性,并更好地为ES6做好准备。
https://stackoverflow.com/questions/36127475
复制相似问题