# @decocms/eitri 中文文档

规范地址：https://npmcn.com/package/%40decocms/eitri/

版本：7\.85\.2
npm 元数据更新时间：2026-11-09T18:39:19.375Z
中文译文更新时间：2026-11-11T19:33:15.447Z
软件包许可：未声明

本文由上游 README 翻译，可能存在偏差，请结合原文核对 API、命令与配置。版权与许可归原作者所有。

原始 npm 页面：https://www.npmjs.com/package/%40decocms/eitri
原文对照：https://npmcn.com/package/%40decocms/eitri/?lang=original
项目主页：https://github.com/decocms/blocks#readme
源码仓库：https://github.com/decocms/blocks

## 关键信息（来自 npm 元数据）

- 包体积（解压后）：16.2 kB，9 个文件
- 模块格式：ES Module
- TypeScript 类型：未声明
- 运行依赖：2 个
- 首次发布：2026-07-16T14:28:44.266Z
- 最新版本发布：2026-11-09T18:39:18.879Z
- 近 30 天下载量：5792（2026-10-12 至 2026-11-10，npm 官方下载统计）
- 已发布版本数：182（近 12 个月 182 个）

## 中文简介

对 Eitri 移动堆栈的 Deco 绑定: 生成一个充填完好的.deco (自足的schema + decofile快照),所以 Studio 可以编写内容. 没有渲染——Eitri是本地人.

## 安装

```sh
npm install @decocms/eitri
```

也可以使用：`pnpm add @decocms/eitri`、`yarn add @decocms/eitri`、`bun add @decocms/eitri`

## README

# `@decocms/eitri`

装订 **爱翠** 移动堆栈。 与 `@decocms/nextjs` 编号 : `@decocms/tanstack`,这个软件包 **没有** 做点什么 Eitri做的 以本地方式运行. `@decocms/eitri` 仅限 _生成一个 填满 `.deco`_ 因此 Studio 可以针对您的 Eitri 段落撰写内容 :

-   (单位:千美元) **自定义** `.deco/meta.gen.json` (本节计划) **加号** 页:1 框架块类型——页面、匹配者、, `Resolvable`,节取取者—— 烤入,所以一个基于FS的工作室 逐字读取,没有运行时间),和
-   捆绑 `.deco/blocks.gen.json` 分解文件快照 Eitri 运行时间 消费.

这是一个薄薄的,埃特里口味的包装 `@decocms/blocks-cli`是因为 `generate` 指挥员(`--platform eitri`) (中文(简体) ). 见 [`docs/eitri-stack-design.md`](https://npmcn.com/package/docs/eitri-stack-design.md) 全文 设计.

## Eitri拥有的和Deco拥有的

|  | 拥有者 |
| --- | --- |
| 节次 `Props` - JSON Schema, 污名快照(`.deco`(中文(简体) ) | **`@decocms/eitri`** (本套装) |
| 撰写内容(形式、页面组成) | 工作室(阅读) `.deco`(中文(简体) ) |
| 获取设备上的调试文件 + 渲染部分 | **Eitri 平台/ 您的应用程序** |

有故意的,有故意的,没有故意的 **无运行时间 SDK** 在这里.

## 节

Eitri 区段完全是一个deco 区段: 默认导出组件 `src/sections/**` 带有导出 `Props` 与 JSDoc 记录的接口.

```tsx
// src/sections/Banners/Hero.tsx
import { Image, View } from "eitri-luminus";

export interface Props {
  /** @title Hero image. */
  image: string;
  /** @title Alt text. */
  alt?: string;
  /** @title Publish date. @format datetime */
  datetime?: string;
}

export default function HeroBanner({ image, alt }: Props) {
  return <View><Image src={image} alt={alt} /></View>;
}
```

`@title`, (中文(简体) ), `@format` (例如:. `textarea`, (中文(简体) ), `datetime` • 已正常化 `date-time`, (中文(简体) ), 而其他JSDoc部件标签驱动 Studio格式. 可能会是 `.tsx`, (中文(简体) ), `.ts`, (中文(简体) ), `.jsx`,或 `.js`。 。 。 .

## 安装

```bash
# in your Eitri app (as a dev tool)
npm i -D @decocms/eitri
```

## 设置

```bash
npx deco-eitri init
```

这个脚手架( 从未覆盖过现有文件 ) :

-   `tsconfig.json` 扩展 `@decocms/eitri/tsconfig` —— 说 **所需经费**· ; `generate-schema` 需要一个 tsconfig 来分析您的 `Props` 类型.
-   `src/eitri-env.d.ts` - 环境吸血 `eitri-luminus` 编号 : `eitri-bifrost` 这样 您的编辑和 `tsc` 别标注这些进口品 纯ergoomic; 生成 工作没有它。 如果您安装了真假, 删除它 `eitri-luminus` 类型.

如果你更喜欢用手电线 `tsconfig.json` 只需要:

```json
{ "extends": "@decocms/eitri/tsconfig", "include": ["src"] }
```

## 生成

```bash
# from the app root
npx deco-eitri generate

# or, targeting a sub-app in a monorepo without cd:
npx deco-eitri generate --root eitri-shopping-example-shared
```

添加为脚本:

```json
{ "scripts": { "deco:generate": "deco-eitri generate" } }
```

产出 `.deco/`数字 :

-   `meta.gen.json` ——自成一体的计划(`framework: "eitri"`) (中文(简体) ).
-   `blocks.gen.json` —— 解密快照( 启动为 `{}` 用于新应用程序; Studio 以内容为作者填充).
-   `generate.digests.json` ——增生缓存(承诺).

反应运行时的文物(`sections.gen.ts`, (中文(简体) ), `blocksManifest.gen.ts`, (中文(简体) ), `loaders.gen.ts`, (中文(简体) ), `invoke.gen.ts`(a) 故意的 **没有** 生产——Eitri 不使用它们.

## 程序化 API

```ts
import { generateEitri } from "@decocms/eitri";

const code = await generateEitri({ root: "path/to/app", force: true });
```

## 旗帜

`deco-eitri generate` 转发 `@decocms/blocks-cli` `generate` 旗帜 (单位:千美元)`--root`, (中文(简体) ), `--force`, (中文(简体) ), `--dry-run`, (中文(简体) ), `--sections-dir`, (中文(简体) ), `--namespace`, (中文(简体) ), `--site`, (中文(简体) ), 运行 `npx deco-eitri generate --help` 完整名单. `--platform eitri` 总是适用.

## 常见问题

### @decocms/eitri 是什么？

对 Eitri 移动堆栈的 Deco 绑定: 生成一个充填完好的\.deco \(自足的schema \+ decofile快照\),所以 Studio 可以编写内容\. 没有渲染——Eitri是本地人\.

### 如何安装 @decocms/eitri？

在项目目录运行 npm install @decocms/eitri，或使用 pnpm add / yarn add / bun add。它还提供命令行工具 deco-eitri，可以用 npx deco-eitri 直接运行。

### @decocms/eitri 支持 TypeScript 吗？

该包的 package\.json 没有声明类型入口。需要类型提示时，可以在 npm 上查找社区维护的 @types/decocms\_\_eitri 是否存在。

### @decocms/eitri 支持 ESM 还是 CommonJS？

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

### @decocms/eitri 可以商用吗？

@decocms/eitri 使用 未声明 许可。package\.json 没有声明许可证。没有许可证的代码默认保留全部权利，商用前请联系作者或查看仓库中的 LICENSE 文件。以上为概括，不构成法律意见，请以许可原文为准。

### @decocms/eitri 的下载量有多少？

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

### @decocms/eitri 还在维护吗？

最新版本 7\.85\.2 发布于 2026/11/10（2 天前）；至今共发布 182 个版本，其中过去 12 个月发布了 182 个；首次发布于 2026/07/16。发布频率只是参考信号：功能稳定的工具可能很少需要更新，建议结合源码仓库的 issue 和提交记录判断。

