接口: OpenUIContextValue
由 OpenUI 渲染器、hooks、action 和表单字段共享的运行时上下文。
属性
evaluationContext
evaluationContext:
EvaluationContext
运行时表达式求值所使用的 AST 求值上下文。
getFieldValue
getFieldValue: (
formName:string|undefined,name:string) =>any
获取字段值。$bindings 位于顶层,表单字段则嵌套在 formName 下。
参数
返回
any
isQueryLoading
isQueryLoading:
boolean
是否有 Query 正在获取数据。
isStreaming
isStreaming:
boolean
LLM 当前是否正在流式输出内容。
library
library:
Library
当前使用的组件库(schema + 渲染器)。
renderNode
renderNode: (
value:unknown) =>ReactNode
将任意值(元素、数组、原始值)渲染为 React 节点。
参数
返回
ReactNode
reportError?
optionalreportError?: (error:OpenUIError) =>void
上报结构化错误(由错误边界内部使用)。
参数
返回
void
setFieldValue
setFieldValue: (
formName:string|undefined,componentType:string|undefined,name:string,value:unknown,shouldTriggerSaveCallback?:boolean) =>void
设置表单字段值。
参数
返回
void
store
store:
Store
用于 $variables 和表单数据的响应式绑定存储。
triggerAction
triggerAction: (
userMessage:string,formName?:string,action?:ActionPlan| {context?:string;params?:Record<string,any>;type?:string;url?:string; }) =>void|Promise<void>
触发一个 action。可接受以下几种:
- ActionPlan(v0.5):按顺序执行各个步骤(Run、Set、ToAssistant、OpenUrl)
- 旧版 action 配置(v0.1):带有可选 type 和 params 的对象。
- 不传:触发带有该 label 的 ContinueConversation
参数
返回
void | Promise<void>