npm 包 @erquhart/lerna-package 使用教程

简介

@erquhart/lerna-package 是一个基于 lerna 的 npm 包,用于管理 monorepo 的 packages。

安装

你可以使用 npm 或 yarn 进行安装:

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

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

使用

初始化

在 monorepo 的根目录下运行以下命令来初始化 lerna:

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

添加一个 package:

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

配置

在 monorepo 的根目录下创建 lerna.json 文件作为 lerna 的配置文件,其中应包含以下内容:

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

其中 "packages/*" 是 package 存放的目录,"version": "independent" 表示每个 package 的版本可以单独管理,"npmClient": "npm" 表示使用 npm 作为 npmClient,"useWorkspaces": true 表示使用 yarn workspaces 或者 npm workspaces,方便 monorepo 管理。

package.json 配置

在 package.json 中添加以下内容:

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

其中 "name": "@my-scope/my-package" 是 package 的名称,"version": "0.0.1" 是 package 的初始版本号,"scripts" 中的 buildbuild:lib 都是为了打包输出 js 文件的命令,这里以 tsc(TypeScript 编译器)举例,而 "peerDependencies" 是声明该 package 需要的 peerDependencies。

发布

在 monorepo 的根目录下运行以下命令来发布 packages:

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

示例代码

一个简单的示例代码,假设 monorepo 的根目录为 /my-monorepo,package 存放的目录为 /my-monorepo/packages/my-package,src 目录下有个 index.tsx

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

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

打包后输出 lib 目录下的 index.js

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

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

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

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

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

这样就可以将 package 发布到 npm 了,其他包括该 package 的工程需要通过 npm install @my-scope/my-package 来进行安装和引入。

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


猜你喜欢

  • npm 包 typedarray-methods 使用教程

    在前端开发中,我们通常会使用 TypedArray 来处理二进制数据。然而,JavaScript的TypedArray只有少量的操作方法,这使得在处理二进制数据时非常麻烦。

    4 年前
  • npm 包 mobilify 使用教程

    npm 包 mobilify 使用教程 简介 Mobilify 是一个 Node.js 库,它可以轻松地将任何网站在移动设备上优化和重构。Mobilify 提供了一组 API,可以将 Web 应用程序...

    4 年前
  • npm 包 clip-pixels 使用教程

    介绍 在前端开发中,当我们需要裁剪一张图片时,通常会使用 CSS 的 clip 属性。但这个属性需要手动计算出裁剪的位置和大小,比较繁琐。而 npm 包 clip-pixels 可以帮助我们轻松地计算...

    4 年前
  • npm 包 buffer-to-uint8array 使用教程

    在前端开发中,我们经常需要处理二进制数据,如图片、视频等,而 Node.js 提供的 Buffer 类则是处理这类数据的重要工具。但是在浏览器环境下,我们由于无法使用 Buffer 类,需要使用其他的...

    4 年前
  • npm 包 utif 使用教程

    在前端开发中,有许多常用的工具包,其中 npm 包 utif 作为一款图像工具包,可以方便地读取、处理和生成各种图片格式。本教程将为你介绍如何使用它,以及它的使用场景和方法。

    4 年前
  • npm包image-decode使用教程

    随着前端领域的发展,越来越多的应用需要通过前端处理图片。现有的一些库虽然可以将图片数据转换成base64,但并不能对图片数据进行更进一步的操作。image-decode就是一个很好的解决方案。

    4 年前
  • npm 包 primitive-pool 使用教程

    引言 随着前端应用复杂度的不断提高,我们的前端应用需要处理越来越多的任务。其中,处理图片是一个很常见的任务。一些应用涉及到图形处理和动画,而这些都需要对图像进行精细控制和操作。

    4 年前
  • npm 包 image-pixels 使用教程

    在前端开发中,经常会遇到需要处理图片像素的需求,例如:获取图片的像素信息、修改图片像素、生成具有特殊样式的图片等。而 npm 库 image-pixels 就是一款处理图片像素的工具库,本文将为您介绍...

    4 年前
  • npm 包 validate.io-matrix-like 使用教程

    介绍 在前端开发中,有很多情况下需要判断一个矩阵是否是正方形的,或者是否满足特定的形式,比如对称矩阵、上三角矩阵、下三角矩阵等等。 validate.io-matrix-like 是一个可以用来判断矩...

    4 年前
  • npm 包 validate.io-ndarray-like 使用教程

    简介 ndarray是一个N维数组库,可以在JavaScript中进行快速的矩阵操作。validate.io-ndarray-like是该库中一个npm包,用于验证给定的数组是否是一个像ndarray...

    4 年前
  • npm 包 compute-array-dtype 使用教程

    前言 在前端开发中,我们经常需要处理数组数据。而不同的数组类型对于不同的计算任务有着不同的影响。因此,了解如何正确地处理数组类型是非常重要的。本文将介绍一款 npm 包 compute-array-d...

    4 年前
  • npm 包 compute-dtype 使用教程

    在前端开发中,数据类型是非常重要的。有时我们需要处理大量的数据,而这些数据往往是不同的数据类型,如数字、字符串、布尔型等等。为了帮助我们轻松地处理这些数据类型,npm 上有一个简单但非常实用的包叫做 ...

    4 年前
  • npm 包 compute-indexspace 使用教程

    简介 compute-indexspace 是一个处理数组的 Javascript 库,可以快速地生成多维数组的下标。 安装 使用 npm 包管理工具可以方便地安装该库。

    4 年前
  • npm 包 dstructs-array-constructors 使用教程

    简介 dstructs-array-constructors 是一个可以在 Node.js 和浏览器中使用的 JavaScript 库,它提供了一个可扩展的数组构造函数,可以帮助我们更方便地创建数组和...

    4 年前
  • npm 包 dstructs-array-dtype 使用教程

    什么是 dstructs-array-dtype? dstructs-array-dtype 是一个 npm 包,用于定义 JavaScript 数组的数据类型。它通过给数组中的元素添加类型标签,使得...

    4 年前
  • npm 包 dstructs-cast-arrays 使用教程

    npm 包 dstructs-cast-arrays 使用教程 概述 在前端开发中,我们不可避免地需要使用数据结构,而数组是一种最常用的数据结构之一。但有时候我们会面临需要把字符串转化为数组的情况,此...

    4 年前
  • npm 包 validate.io-nan-primitive 使用教程

    简介 validate.io-nan-primitive 是一个用于验证 JavaScript 原始类型中是否包含 NaN 的 npm 包。该包可以用于前端和后端开发中,从而避免 NaN 带来的计算结...

    4 年前
  • npm包validate.io-contains使用教程

    在开发前端项目中,我们经常需要检查一个变量是否包含特定的值。这时,一个方便易用的npm包就是validate.io-contains。本文将针对这个包进行详细的使用教程和示例。

    4 年前
  • npm 包 validate.io-nonnegative-integer-array 使用教程

    介绍 validate.io-nonnegative-integer-array 是一个可以用来验证非负整数数组的 npm 包。它通过对数组内每个元素进行判断,判断其是否是非负整数来进行验证。

    4 年前
  • npm 包 validate.io-typed-array 使用教程

    在前端开发中,数组的类型验证是非常常见的需求。validate.io-typed-array就是一款可以对类型做出验证的npm包,在处理数组时非常实用,接下来就来看看validate.io-typed...

    4 年前

相关推荐

    暂无文章