@eik/common

中文文档
5.2.2发布于 2026/11/03ISCTypeScriptES Module构建来源已验证近 30 天下载 5587

Eik模块通用公用事业

中文使用文档
文档目录6 节
  1. 司马
  2. API 密码
  3. 帮助者
  4. 计划
  5. 流线
  6. 验证符

@ eik/ 常见

这个软件包包含其他Eik模块中使用的通用公用事业和计划.

司马

这个 计划 eik.json 可见于此 repo。 这就是你如何用在你的身上 eik.json。 。 。 .

{
    "$schema": "https://raw.githubusercontent.com/eik-lib/common/main/lib/schemas/eikjson.schema.json",
    "name": "my-app",
    "version": "1.0.0",
    "server": "https://eik.store.com",
    "files": "./public",
    "import-map": ["https://eik.store.com/map/store/v1"]
}

@eik/common 拥有 JavaScript API 到 对照计划检查。 。 。 .

API 密码

帮助者

helpers 拥有其它几个Eik模块使用的公用功能.

import { helpers } from "@eik/common";

let config = helpers.getDefaults();

这些职能是: helpers。 。 。 .

名称说明
getDefaults读取配置从 eik.json 或者说 package.json。包括缺少可选设置的默认值.
localAssets为地方发展设置资产通道. 已挂载的路径匹配 Eik 服务器上的路径, 并且从 eik. json 工程文件中读取值 .
typeSlug包类型的Eik配置值与其URL/文件系统值之间的映射.
typeTitle类型配置值与其标题之间的地图。 基本上大写输入.
addTrailingSlash
removeTrailingSlash
addLeadingSlash
removeLeadingSlash
resolveFiles使用一个Eik JSON"文件"定义将磁盘上的文件解析成数据结构. 返回一个列表 解开文件。 。 。 .
configStore用于读取和写入 Eik 配置文件的帮助方法集.
fetchImportMaps帮助获取导入地图( URL 阵列), 并带有一些常见的错误处理 .

本地资产

为地方发展设置资产通道. 已挂载的路径匹配 Eik 服务器上的路径, 并且从 eik. json 工程文件中读取值 .

鉴于这个服务器 eik.json,在您的应用程序中将添加以下路径 .

import { helpers } from "@eik/common";
import express from "express";

let app = express();

await helpers.localAssets(app);
{
    "name": "my-app",
    "version": "1.0.0",
    "server": "https://eik.store.com",
    "files": {
        "esm.js": "./assets/esm.js",
        "esm.css": "./assets/esm.css",
        "/": "./assets/**/*.map"
    }
}
/pkg/my-app/1.0.0/esm.js
/pkg/my-app/1.0.0/esm.css
/pkg/my-app/1.0.0/esm.js.map
/pkg/my-app/1.0.0/esm.css.map

计划

schemas 具有对照 eik.json 计划。 。 。 . 您可以检查图中的值 eik.json 个人或个人 中数值.

import { schemas } from "@eik/common";

let { error, value } = schemas.validate.eikJSON(eikConfig);
if (error) {
    // fallback
}

如果你喜欢,你可以使用 assert API 显示错误 .

import { schemas } from "@eik/common";

try {
    schemas.assert.eikJSON(eikConfig);
} catch {
    // fallback
}

这些职能是: schemas.validate 财务报告和审定财务报表 schemas.assert。 。 。 .

名称说明
eikJSON检查给定值是否包含有效的所需字段
name检查 名称
version检查 版本
type检查 类型
server检查 服务器
files检查 文件
importMap检查 导入图
out检查 关闭

流线

stream 具有检查一个值是否为流函数.

import { stream } from "@eik/common";

if (stream.isStream(maybeStream)) {
    // yup, it's a Stream
}

if (stream.isReadableStream(maybeReadableStream)) {
    // yup, it's a ReadableStream
}

验证符

validators 函数返回已规范化的字符串为小写,或者如果值没有通过验证规则,则丢出错误. 在可能的情况下,最好使用 schemas API 密码。 。 。 .

import { validators } from "@eik/common";

let alias = validators.alias("1");

这些职能是: validators。 。 。 .

名称说明
alias检查一个值是否是一个有效的别名值( ex 1)
name检查一个值是否是一个有效的软件包名称
org检查一个值是否是一个有效的组织名称 .
origin请检查access-date=中的日期值 (帮助) HTTP 源代码 .
version检查一个值是否是一个有效的 semver 版本
semverType检查一个值是否是一个有效的 semver 类型( 主要, 次要, 补丁)
type检查该值是否是一个有效的 Eik 类型( pkg, npm, 映射)

版本与发布记录

@eik/common 共发布 86 个版本,首次发布于 2019/11/15;过去 12 个月发布了 27 个版本。最新版本附带 npm provenance 构建来源证明,可追溯到公开的 CI 构建记录。

版本发布日期距今
5.2.2latest2026/11/0310 天前
5.2.12026/08/212 个月前
5.2.02026/08/192 个月前
5.1.342026/06/204 个月前
5.1.332026/06/105 个月前
5.1.322026/06/095 个月前

其他发布通道:next → 4.0.0-next.7。

关于 @eik/common 的常见问题

@eik/common 是什么?

Eik模块通用公用事业

如何安装 @eik/common?

在项目目录运行 npm install @eik/common,或使用 pnpm add / yarn add / bun add。

@eik/common 支持 TypeScript 吗?

支持。包内自带 TypeScript 类型声明(package.json 声明了 types 入口),安装后即可获得类型提示,无需再安装 @types 包。

@eik/common 支持 ESM 还是 CommonJS?

以 ES Module 形式发布,推荐使用 import 引入。在 CommonJS 项目中,Node.js 20.19+ / 22.12+ 可以直接 require() 不含顶层 await 的 ES Module,更早的版本需要改用动态 import()。

@eik/common 可以商用吗?

@eik/common 使用 ISC 许可。宽松许可:允许商业使用、修改和再分发,通常只需在分发时保留原版权与许可声明。以上为概括,不构成法律意见,请以许可原文为准。

@eik/common 的下载量有多少?

根据 npm 官方下载统计,@eik/common 在 2026/10/13 – 2026/11/11 这 30 天内被下载 5,587 次,日均约 186 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

@eik/common 还在维护吗?

最新版本 5.2.2 发布于 2026/11/03(10 天前);至今共发布 86 个版本,其中过去 12 个月发布了 27 个;首次发布于 2019/11/15。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。