Node.js lambda:如何在本地开发中导入公共层实用程序库,同时也可以在云中工作

PGT*_*PGT 7 amazon-web-services aws-lambda serverless aws-lambda-layers

我有一个 monorepo,在自己的文件夹中包含一些函数。我想创建一个具有实用功能的公共层,我可以require/import在本地使用它,也可以在部署到云后使用它。我想添加一个layers/目录来执行此操作,文件夹结构如下所示:

  A
  |- node_modules/
  |- package.json
  |- index.js
  B
  |- node_modules/
  |- package.json
  |- index.js
  layers
    |- nodejs
      |- node_modules
      |- package.json
      |- util.js
Run Code Online (Sandbox Code Playgroud)

我没有设置上面的文件夹结构,并且可以接受它的更改。

目前,我只有A和 以及B它们自己的独立依赖层(使用 编排terraform),并且它们在本地工作和部署都很好。

引入通用实用程序层后,问题是我可以在本地要求/导入,但在云中就不一样了(/opt/nodejs/*),但如果我将其更改为在云上工作,它将无法工作本地。

我没有使用该serverless框架。