探索 Tiptap V3 的最新功能

监听事件

AI Agent 提供者会发出事件,你可以订阅这些事件以响应代理状态的变化。这些事件使你能够构建响应式的用户界面并实现自定义逻辑。

可用事件

事件描述参数
stateChange提供者状态变化时触发(newState, previousState, context)
loadingError加载过程中发生错误时触发(error, context)
beforeToolCall工具调用执行前触发(toolCall, context)
afterToolCall工具调用执行后触发(toolCall, context)
stopRunningAI Agent 运行完成时触发(context)

订阅事件

订阅事件有两种方式。在初始化提供者时,你可以通过选项传入事件处理函数。

const provider = new AiAgentProvider({
  onStateChange: (newState, previousState, context) => {
    console.log('状态变化:', newState)
    // 基于新状态更新 UI
  },
  onLoadingError: (error, context) => {
    console.error('加载错误:', error)
    // 向用户显示错误信息
  },
})

或者你可以使用 on 方法订阅事件,用 off 方法取消订阅。

// 定义事件处理函数
const handleStateChange = (newState, previousState, context) => {
  console.log('状态变化:', newState)
  // 基于新状态更新 UI
}

// 订阅事件
provider.on('stateChange', handleStateChange)

// 之后不需要时取消订阅
provider.off('stateChange', handleStateChange)