@concord-consortium/lara-interactive-api

中文文档
1.15.0发布于 2026/10/08MITTypeScriptCommonJS近 30 天下载 1985

LARA 交互式 API 客户端和类型

中文使用文档
文档目录5 节
  1. API 文档
  2. 安装
  3. 使用量
  4. API 函数
  5. 钩子

API 文档

一个基于TypeScript的API,用于LARA Interactive API. 这还包括共享的API的所有类型 与执行 API 的 LARA- side 的服务器侧 Typescript 文件相连接.

注:此文件(在/docs中)是自动生成的,属于 lara-typescript 使用 类型文件 通过将API客户端的readme文件与自动生成的输出合并. 如果您希望编辑此文档, 请编辑 lara-typescript/src/interactive-api-client/README.md。 。 。 .

安装

首先安装软件包 :

npm i --save @concord-consortium/lara-interactive-api

然后导入到您的代码中 :

import * as interactiveApi from "@concord-consortium/lara-interactive-api" 或导入必要的函数: import { setHeight, useInteractiveState } from "@concord-consortium/lara-interactive-api"

aPI 编译为 TypeScript 并包含输入 .d.ts 文件夹中的文件。 这些打字是 由 TypeScript 编译器自动加载, 因此您现在需要安装单独的 @types/... 软件包.

使用量

API 函数

所有 Interactive API 帮助被导出为单个函数 。 例如:;

import { setHeight, setHint, getAuthInfo } from "@concord-consortium/lara-interactive-api"

一些功能可能接受类型,例如:. getInteractiveState<InteractiveState>()当更多的类型被接受, 类型变量的顺序很重要,它是 InteractiveState, (中文(简体) ), AuthoredState, (中文(简体) ), DialogState,以及 IGlobalInteractiveState。如果您想要跳过类型变量,只需使用 {} 位置和任何类型变量 结尾默认为 {},例如:

const getInitInteractiveMessage<IInteractiveState, {}, {}, IGlobalInteractiveState>();

钩子

如果您在使用 React , 您会希望使用将 API 函数更轻松地包裹的钩子 使用表单。 钩子从头开始 use 前缀。 要先用钩子导入 :

import { useInteractiveState } from "@concord-consortium/lara-interactive-api"

然后使用您在反应组件中的类型变量调用钩子.

这里有一个很小的例子: useInteractiveState 钩:

const { interactiveState, setInteractiveState } = useInteractiveState<IInteractiveState>();
...
const handleButtonClick = () => {
  // Functional update, usually safer option:
  setInteractiveState((prevState: InteractiveState) => ({ numButtonPresses: prevState.numButtonPresses + 1 }));
  // Or regular update that can cause troubles when new state is based on the previous one:
  // setInteractiveState({ numButtonPresses: interactiveState.numButtonPresses + 1 });
}
...
<button onClick={handleButtonClick}>{interactiveState.numButtonPresses}</button>

呼叫电话 setInteractiveState 由钩子返回的方法将同时更新钩子内部的状态 也向LARA发送信息. 这意味着,打电话 setInteractiveState 将触发新的反应 使您 使用 useInteractiveState 钩.

这同样适用于其他基于国家的钩子及其起落架:

  • useAuthoredState
  • useGlobalInteractiveState

版本与发布记录

@concord-consortium/lara-interactive-api 共发布 99 个版本,首次发布于 2020/05/21;过去 12 个月发布了 16 个版本。

版本发布日期距今
1.15.0latest2026/10/081 个月前
1.15.0-pre.0beta2026/10/081 个月前
1.14.02026/07/024 个月前
1.14.0-pre.02026/06/264 个月前
1.13.02026/03/167 个月前
1.13.0-pre.22026/03/108 个月前

关于 @concord-consortium/lara-interactive-api 的常见问题

@concord-consortium/lara-interactive-api 是什么?

LARA 交互式 API 客户端和类型

如何安装 @concord-consortium/lara-interactive-api?

在项目目录运行 npm install @concord-consortium/lara-interactive-api,或使用 pnpm add / yarn add / bun add。它还需要宿主项目提供 peer 依赖:react(>=16.9.0)、react-dom(>=16.9.0)。npm 7 及以上与 pnpm 8 及以上默认会自动安装必需的 peer 依赖,Yarn 需要手动安装。

@concord-consortium/lara-interactive-api 支持 TypeScript 吗?

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

@concord-consortium/lara-interactive-api 支持 ESM 还是 CommonJS?

以 CommonJS 形式发布,可以直接 require();在 ES Module 项目中也可以用 import 引入(Node.js 会把 module.exports 作为默认导出)。

@concord-consortium/lara-interactive-api 可以商用吗?

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

@concord-consortium/lara-interactive-api 的下载量有多少?

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

@concord-consortium/lara-interactive-api 还在维护吗?

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