# @iyulab/lowline-form 中文文档

规范地址：https://npmcn.com/package/%40iyulab/lowline-form/

版本：0\.11\.0
npm 元数据更新时间：2026-11-01T10:55:59.235Z
中文译文更新时间：2026-11-01T12:41:13.249Z
软件包许可：MIT

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

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

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

- 包体积（解压后）：447 kB，16 个文件
- 模块格式：ES Module
- TypeScript 类型：包内自带
- 运行依赖：2 个
- 首次发布：2026-10-22T18:10:12.784Z
- 最新版本发布：2026-11-01T10:55:58.949Z
- 已发布版本数：12（近 12 个月 12 个）

## 中文简介

Lowline表单元素：一个formdown表单，它的决定字段是从人们确认的记录中建议的，与Lowline主机的路由对话。

## 安装

```sh
npm install @iyulab/lowline-form
```

也可以使用：`pnpm add @iyulab/lowline-form`、`yarn add @iyulab/lowline-form`、`bun add @iyulab/lowline-form`

## README

# `<lowline-form>`

一个formdown表单，其确定的字段是从人们确认的记录中建议的，与Lowline主持人交谈 路由（Routes）——位于本页末尾的契约，由主机通过引擎实现。. NET参考主机是 [`samples/aspnet`](https://npmcn.com/package/samples/aspnet)）。

```html
<lowline-form src="/lowline" form="intake" record="r-17"></lowline-form>
<script type="module">
  const form = document.querySelector('lowline-form')
  form.content = '@customer: [text]\n@owner: [select options="kim,lee"]'
  // later: await form.save()  ·  await form.fill('customer Beta, owner lee')
</script>
```

| 财产 |  |
| --- | --- |
| `src` | 主机的路由在哪里(`/lowline`）。 |
| `form` | 表单，根据主机定义它的名称。 |
| `record` | 记录：正在写的记录；重新打开的记录保留了它的id，所以它不是自己的证据。 |
| `content` | 表单的formdown文本。 |
| `data` | 记录打开时的值。 |
| `rate` | 字段的答案被保留以检查的频率，从0到1（默认为20分之一）。 |
| `strings` | 表格上用主人的语言显示的单词。 |
| `settled-by` | 谁在写，作为一个不透明的id，主持人给了一个人，一个id，从来没有名字。设置保存时发送。 |
| `batch` | 记录写入的批次，当同一来源同时产生多个记录时。设置保存时发送。 |

`save()` 发送显示、获取和拒绝内容的值，并触发 `lowline-saved`;一个 通过自己的API调用存储记录的主机 `settle()` 在它保存之后，它只发送帐户 并让主机的引擎学习存储的记录(`Saved` 在。net); `fill(text)` 在其字段中提供宿主模型的值。记录无法回答的字段由 主机的模型(`judge`)：请求一次它读取的值，当用户写入时显示在字段中 永远不要自己放进去。当路线没有回应时， `lowline-unavailable` 着火了，表格是由 的手。浏览器中不计算任何内容：主机的引擎计算发送的内容。

绘制自己的表单导入的主机 `Draft`， `Session` 和 `LowlineClient` 从 `@iyulab/lowline-form/headless`， 它既不引入Lit也不引入formdown，也不注册任何元素（包根也将它们与元素一起携带）。

包裹是 `@iyulab/lowline-form`，将Lit和formdown作为依赖项。没有构建步骤的页面使用一个 里面的文件同时携带： `dist/bundle/lowline-form.bundle.js`.

```sh
npm ci
npm test
npm run bundle   # one file with Lit and formdown inside, in dist/bundle
```

## 主机所服务的路由

在前缀下，主机将它们挂载在(`src`):

| 路线 | 需要 | 答案 |
| --- | --- | --- |
| `POST {form}/propose` | `{ "id", "values" }` -目前为止的记录 | 根据开放决定的领域：建议，它的基础，它的 `promise`或者为什么没有 |
| `POST {form}/settle` | `{ "id", "saved", "draft" }` ——不 `saved` 与 `Saved` | `{ "id", "settledAt" }`;400美元的价值是形式所不能容纳的，什么也学不到 |
| `GET {form}/report` | \- - - - - - | 每个决定字段：选择的阈值，选择的记录数量(`chosenOn`)，以及记录的回放在他们身上看到了什么 |
| `POST {form}/fill` | `{ "values", "text", "attachments" }` - - - - - - `attachments`，可选：每个人展示了什么 `{ "mediaType", "data" (base64), "name" }`； `text` 当有东西显示时可能是空的 | 模型的价值作为建议；非base64的数据为400；404没有模型就这么说 |
| `POST {form}/judge` | `{ "id", "values" }` | 模型对记录无法回答的领域的判断；404没有模型就这么说 |

未定义的表单是404。每个请求的内存空间和允许的选择来自主机，而不是来自请求 的身体。形状是引擎自己的电线形状：in。网， `LowlineJson` 序列化。

## 常见问题

### @iyulab/lowline-form 是什么？

Lowline表单元素：一个formdown表单，它的决定字段是从人们确认的记录中建议的，与Lowline主机的路由对话。

### 如何安装 @iyulab/lowline-form？

在项目目录运行 npm install @iyulab/lowline-form，或使用 pnpm add / yarn add / bun add。

### @iyulab/lowline-form 支持 TypeScript 吗？

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

### @iyulab/lowline-form 支持 ESM 还是 CommonJS？

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

### @iyulab/lowline-form 可以商用吗？

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

### @iyulab/lowline-form 还在维护吗？

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

