npm 包 node_serverless_bundler 使用教程

在以 Serverless 为代表的无服务器计算时代中,Node.js 已经成为了构建函数式服务的主流语言。但是,在实际应用中,使用 Node.js 组织和管理无服务器函数的代码也面临一些挑战。这时候,npm 包 node_serverless_bundler 在无服务器场景中发挥了不可替代的作用。

它可以将多个 .js 文件打包成一个文件,消除了开发者构建和部署代码的一些麻烦。本文将向大家介绍 node_serverless_bundler 的使用方法,以及一些注意点。

安装

node_serverless_bundler 可以通过 npm 安装,使用以下命令即可:

--- ------- -- -----------------------

打包

node_serverless_bundler 通过指定入口文件和依赖,打包生成一个文件。实现该功能需要先在项目根目录下创建一个入口文件 index.js,然后在 package.json 文件里添加如下配置:

---------- -
  -------- -------------
  ---------- -
    ----------
  --
  --------- ------------------
  ---------- ------------
-

其中:

  1. entry 是入口文件路径,即我们需要打包的入口文件;
  2. exclude 是需要从打包的文件中排除的依赖,常见的 SDK 如 aws-sdk 就是需要排除的。如果有其他需要排除的依赖,可以按照此格式在数组中加入;
  3. output 是打包后生成的文件路径;
  4. runtime 是指定 AWS Lambda 执行环境的版本,如 nodejs10.x、nodejs12.x 等。这里值得一提的是,AWS 对 nodejs 的支持一般都是滞后的,最稳定的版本是 nodejs10.x,其他版本可能有不兼容错误。

上面的配置在准备好后,就可以通过以下命令进行打包:

------------

打包好的代码会输出到 dist 目录下。可以看到,该命令的执行需要在项目根目录下,也就是 package.json 文件所在的目录下。

示例代码

下面为大家提供一段简单的示例代码,用来说明如何使用打包好的文件:

----- --- - -------------------
----- ------ - --- -------------

--------------- - ----- ------- -------- -- -
  ----- ------ - -
    ------------- ------------------
    --------------- ------------------
    -------- ---------------------
  --

  ----- ------ - ----- --------------------------------
  ------ -
    ----------- ----
    ----- --------------
  --
--

从上面的代码可以看到,打包后的文件内容会暴露一个 handler 函数,函数的第一个参数是 event,第二个参数是 context。

注意点

  • 打包文件的入口 JS 文件建议只暴露一个函数(例如 handler 函数);
  • 不要尝试将 AWS SDK 等广泛使用的依赖打包到生成的文件中,否则将会增加文件大小;
  • 注意 runtime 版本的选择,不同版本可能会存在兼容性问题;
  • 在打包好代码后,我们需要将其上传到相应的服务中,并在其中调用 handler 函数。

结语

node_serverless_bundler 可以帮助我们更好地组织和管理无服务器函数的代码,消除了构建和部署过程中的一些麻烦。上面我们介绍了该包的基本使用方法以及注意点,并给出了一段示例代码。希望对大家有所帮助。

来源:JavaScript中文网 ,转载请联系管理员! 本文地址:https://www.javascriptcn.com/post/6005668981e8991b448e2c4a


猜你喜欢

  • npm 包 betters 使用教程

    前言 在前端开发中,我们经常会使用一些第三方的库或者框架来完成开发任务。而 npm 是前端开发中最为常用的包管理工具之一。在 npm 上有很多实用的包,其中包括 betters 这个包,它提供了一些常...

    3 年前
  • npm包 fis3-deploy-ala-http-push 使用教程

    在前端开发中,使用fis3作为前端构建工具非常普遍。为了部署到服务器,我们需要使用deploy插件将构建后的资源推送到服务器上。而fis3-deploy-ala-http-push是一个npm包,是f...

    3 年前
  • npm 包 rent-crawler 使用教程

    前言 在数字时代,信息获取变得十分便捷。找房子也十分便捷。我们可以通过房产中介的网站,通过浏览器来查看各样的列表,用自己的喜好筛选房子,最后得到想租的房源。但假如你想要挑选的地方比较多,使用这个方式就...

    3 年前
  • npm 包 bittrex-orderbook-manager 使用教程

    介绍 bittrex-orderbook-manager 是一个 Node.js 的 npm 包,用于管理 Bittrex 订单簿。它提供了一些便捷的方法,可以让你更轻松地获取 Bittrex 交易平...

    3 年前
  • npm 包 damo-cntd 使用教程

    在前端开发中,我们通常会使用许多第三方库和工具来辅助我们完成工作。其中,npm 包是最常用的一种工具之一。其中,damo-cntd 是一种可以帮助我们管理数据和进行可视化的 npm 包。

    3 年前
  • npm 包 devmentor 使用教程

    devmentor 是一款用于在开发过程中提供一些辅助工具的 npm 包。它为前端开发人员带来了很多便利,加快了开发进程。在本文中,我们将介绍 devmentor 的使用方法,并详细介绍其常用功能及其...

    3 年前
  • npm 包 generator-betters 使用教程

    generator-betters 是一个用于创建 Web 开发项目的 Yeoman Generator(脚手架工具),通过它可以快速初始化一个完整的前端工程项目,同时也可以根据自己的需求来定制项目结...

    3 年前
  • npm 包 grant-setproxy 使用教程

    随着前端工程化的普及,npm 包管理工具已经成为前端开发人员的标配。然而,在使用 npm 包的过程中,我们常常需要连接公司内部的代理服务器来进行网络请求。此时,我们需要使用一些工具来帮助我们设置代理。

    3 年前
  • NPM包:react-native-animated-checkbox 使用教程

    前言 React Native已经成为前端界非常流行的技术,它尤其在移动端应用开发领域非常受欢迎。react-native-animated-checkbox是React Native中一个非常有用的...

    3 年前
  • npm 包 staticsite-cli 使用教程

    前置知识 在学习使用 staticsite-cli 之前,我们需要了解一些前置知识: Node.js 环境的安装和使用; npm 包管理器的使用; 命令行工具的基础知识。

    3 年前
  • npm 包 generator-addon-example 使用教程

    在前端开发中,我们经常需要使用各种工具和库来提高开发效率和代码质量。npm 是前端开发过程中使用最广泛的包管理器,它允许我们方便地安装、更新和管理各种 JavaScript 库和工具。

    3 年前
  • npm 包 generator-andari-cookbook 使用教程

    在前端开发中,我们经常使用各种工具和框架来提高开发效率和代码质量。而 npm 包是前端开发中不可或缺的一部分。在这篇文章中,我们将介绍一个名叫 generator-andari-cookbook 的 ...

    3 年前
  • npm Package RxSync 使用教程

    简介 RxSync 是一个轻量且易于使用的 npm 包,它提供了一种简单而优雅的方式来处理异步任务。RxSync 基于 RxJS Observable 和 sync/await 的结合,它可以将多个 ...

    3 年前
  • npm 包 @conga/framework-validation 使用教程

    在前端开发中,数据校验是非常重要的一环。@conga/framework-validation 是一个 npm 包,提供了便捷的数据校验功能,能够快速帮助开发者构建出更加健壮可靠的应用程序。

    3 年前
  • npm 包 ad-vue-colorpicker 使用教程

    在前端开发中,我们经常需要使用到颜色选择器对页面元素的颜色进行调整,ad-vue-colorpicker 是一个基于 Vue.js 的颜色选择器组件库,既支持单色选择,也支持 RGB 和 HSL 颜色...

    3 年前
  • npm 包 markdown-language-server 使用教程

    前言 markdown 是常见的文本格式,常用于写作、编写文档等场合。markdown-language-server 是一个使用 Node.js 实现的 markdown 语言服务器,可以提供语法检...

    3 年前
  • npm 包 ssi-middleware 使用教程

    在 Web 应用程序开发中,SSI(Server Side Includes,服务器端包含)可以使页面划分更清晰,实现复用内容,提高开发效率。ssi-middleware 正是基于 Node.js 平...

    3 年前
  • NPM包Cerebral-ts使用教程

    简介 当今的Web应用程序越来越复杂,需要大量的逻辑来处理各种业务流程。Cerebral-ts是一个前端框架,其目的是管理复杂的应用程序,并使代码易于维护。 Cerebral-ts借助流控制构建数据流...

    3 年前
  • npm 包 private-props 使用教程

    在前端开发中,经常需要在 JavaScript 中定义一些私有属性或私有方法。但是,JavaScript 并没有像其他语言那样提供对私有属性和方法的支持。这就导致了一些开发者可能会采用一些 hack ...

    3 年前
  • npm 包 webpack-dependency-tools 使用教程

    前言 在前端开发中,我们常常需要使用工具来管理依赖、打包和压缩代码。而 webpack-dependency-tools 就是一个功能强大的 npm 包,可以帮助我们分析 JavaScript 代码中...

    3 年前

相关推荐

    暂无文章