npm 包 serverless-shared-library 使用教程

在 Serverless 世界中,开发者都喜欢像搭积木一样去构建应用,需要什么功能就找什么插件/包。但是一旦你的应用让人倾心,需要大规模复制和管理,就逃不开类似 monorepo 的大妈级需求。针对这个问题,我们不妨用 serverless-shared-library 这个 npm 包来协助我们进行团队协作设计和构建。

serverless-shared-library 简介

serverless-shared-library 是为 Serverless Framework 设计的,旨在供开发者在多个 Serverless 项目之间共享可重用代码。如其名,这个 package 可以看做一本类似于技术参考书的共享库,其中包含了 Serverless 开发过程中的常见代码块、工具函数、以及特定应用程序所需的代码。

serverless-shared-library 的特点

  • 预制代码块 针对一些功能模块,开发者可以避免重复造轮子,目前的库内预制的功能包括 S3 静态站托管和 Cognito 用户池自定义域名。
  • 可自定义目录结构 由于使用者需求的差异,serverless-shared-library 支持使用者自定义项目的目录结构
  • 易于测试 serverless-shared-library 内置自动化测试,且特殊设计成可在两个不同的 Serverless Framework 项目之间交叉测试。

serverless-shared-library 使用教程

下面我们将通过一个简单的示例来演示 serverless-shared-library 的使用方法。

安装 serverless-shared-library

使用 npm 安装:

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

或使用 yarn 安装:

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

创建 shared library 项目

我们首先需要创建一个 shared library 项目:

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

安装依赖

安装依赖包:

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

添加服务和函数

在 handler.js 文件中添加服务和函数:

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

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

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

添加 Serverless Framework 配置

在 serverless.yml 文件中添加 Serverless Framework 的配置:

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

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

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

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

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

发布 shared library

发布 shared library:

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

当 shared library 项目发布完成后,会返回一个 sharedLibPackageCloudFormation 变量。在组织内其他 Serverless Framework 项目中,你可以根据这个变量来使用 shared library。举个例子,对于使用 JavaScript Lambda function 的项目,可以通过以下方式来引入 shared library:

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

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

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

通过这种方式,你就可以将多个 Serverless Framework 项目中重复使用的代码抽离到 shared library,从而大大提高了代码复用性,同时增加了代码可维护性。

总结

serverless-shared-library 是一个有用的 npm 包,可以大大提高 Serverless Framework 项目的代码复用性,节省开发人员宝贵的时间。

如果你想开始使用 serverless-shared-library,你需要:

  • 理解 serverless-shared-library 的特点和优势
  • 安装 serverless-shared-library
  • 创建 shared library 项目
  • 安装依赖
  • 添加函数
  • 配置 Serverless Framework
  • 发布 shared library

通过上述步骤,你就可以愉快地享受 serverless-shared-library 带来的代码重用和维护之道了。

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


猜你喜欢

  • npm 包 kung-fig-common 使用教程

    介绍 kung-fig-common 是一个基于 JSON 格式的配置文件管理库,它可以将配置文件维护在单独的文件中,并提供了方便的 API 接口来读取和写入配置文件内容。

    5 年前
  • npm 包 kung-fig-template 使用教程

    介绍 kung-fig-template 是一款方便快速生成 HTML 和 CSS 基本结构的 npm 包。它基于 figlet 和 chalk 两个 npm 包,可以在命令行中生成 ASCII 字符...

    5 年前
  • npm包kung-fig使用教程

    在前端开发过程中,经常会使用到各种各样的npm包来实现功能。而kung-fig是一种非常常用的npm包,它可以快速的生成mock数据和配置文件。在本篇文章中,我们将对kung-fig这个npm包进行详...

    5 年前
  • npm 包 stream-kit 使用教程

    在前端开发过程中,经常需要进行数据的处理和转换。Node.js 中提供了 Stream API 来帮助我们进行这些操作,但是 Stream API 的使用也存在一些困难。

    5 年前
  • npm 包 jsbindat 使用教程

    作为前端开发者,我们经常需要用 JavaScript 来处理二进制数据。在不同的场景下,我们可能需要将二进制数据转换成其它格式的数据以便使用,例如将 ArrayBuffer 转化成字符串。

    5 年前
  • npm 包 hash-kit 使用教程

    在前端开发中,经常需要对文本、密码等敏感信息进行哈希处理,以提高安全性。而 npm 包 hash-kit 则提供了一种便捷的方式来实现哈希处理,并支持多种常用的哈希算法。

    5 年前
  • npm 包 fs-kit 使用教程

    前言 在前端开发中,文件系统操作是很常见的需求,例如读取或写入文件、创建或删除目录等等。Node.js 原生提供了 fs 模块用于文件系统操作,但是使用起来比较麻烦,需要手动处理回调函数、异常情况等等...

    5 年前
  • npm 包 svg-kit 使用教程

    前言 随着前端技术的发展,越来越多的项目需要使用 SVG 图标。但是,SVG 图标的制作和管理十分繁琐。为了解决这个问题,一些前端工程师们开发了 npm 包 svg-kit,它可以方便地管理和使用 S...

    5 年前
  • npm 包 qs-kit 使用教程

    介绍 qs-kit 是一个使用简便的 JavaScript 库,提供了一系列的操作方法,用于操作 URL 中的查询字符串。 安装 使用 npm 进行安装: --- ------- ------使用 以...

    5 年前
  • npm 包 server-kit 使用教程

    什么是 server-kit? server-kit 是一个针对 Node.js 服务器端开发的 npm 包。它提供了一些常用的功能和便利的接口,可以帮助开发者提高效率,减少重复开发的时间和精力。

    5 年前
  • npm 包 nomi-ninja 使用教程

    在前端开发中,我们经常需要使用各种 npm 包来帮助我们完成工作。nomi-ninja 是一个非常实用的 npm 包,它能够快速地生成多个文件并且自动引入。 安装 nomi-ninja 在开始使用 n...

    5 年前
  • npm包math-kit使用教程

    简介 npm包是一种基于Node.js的包管理工具,可以方便地下载、安装、管理前端开发所需的各种包。math-kit是一个用于数学计算的npm包,提供了各种数学函数以及其他有用的工具,使得在前端开发中...

    5 年前
  • npm 包 spellcast 使用教程

    什么是 spellcast spellcast 是一个 npm 包,用于拼写检查和自动纠错。它使用 petercorke/spelling 包来进行拼写检查和自动纠错。

    5 年前
  • npm 包 feather2-postprocessor-inline-compress 使用教程

    什么是 feather2-postprocessor-inline-compress feather2-postprocessor-inline-compress 是一个 Feather2 前端框架的...

    5 年前
  • npm 包 winreg 使用教程

    在前端开发中,经常需要与本地电脑系统进行交互。如何在 Node.js 中获取 Windows 注册表信息就是其中一个常见的问题。为了解决这个问题,我们可以使用 npm 包 winreg。

    5 年前
  • 使用 fx-runner npm 包进行前端开发

    当我们进行前端开发时,可能会涉及到动画和效果的实现。在这方面,fx-runner 这个 npm 包可以为我们提供一些帮助。fx-runner 是一个轻量级的 JavaScript 动画库,它可以帮助我...

    5 年前
  • npm 包 mozilla-toolkit-versioning 使用教程

    前言 版本控制是软件开发中非常重要的一部分。Mozilla 基金会推出了一款 npm 包,叫做 mozilla-toolkit-versioning,旨在提供一种简单而强大的方法来管理项目的版本。

    5 年前
  • npm 包 jpm-core 使用教程

    什么是 jpm-core jpm-core 是一个通过 JavaScript 实现的前端项目构建工具。它提供了一系列的基本指令,可以轻松地完成项目的构建、打包、压缩以及代码优化等任务。

    5 年前
  • npm 包 jetpack-validation 使用教程

    前言 在前端开发中,表单的验证是一个非常重要的环节。而随着项目规模的增大和业务逻辑的复杂化,表单验证的处理逐渐显得繁琐枯燥。Jetpack-validation 是一个基于 Vue.js 的验证插件,...

    5 年前
  • npm package mozilla-version-comparator 使用教程

    前言 在前端开发过程中,经常会需要对多个版本的浏览器进行版本号的比较和处理。对于不同浏览器版本的特性支持度的问题,我们通常需要通过版本号的比较来实现适配,因此,版本号处理成为前端开发中不可或缺的内容。

    5 年前

相关推荐

    暂无文章