Skip to content

[Chatbot] Chatbot组件官方文档中使用senderProps配置附件上传后,文件列表UI未实时刷新,需输入文本触发更新 #6593

@3adafd

Description

@3adafd

tdesign-vue-next 版本

"@tdesign-vue-next/chat": "^0.5.2"、"tdesign-vue-next": "^1.18.6"

重现链接

https://tdesign.tencent.com/chat/components/chatbot#%E8%BE%93%E5%85%A5%E9%85%8D%E7%BD%AE

重现步骤

问题描述

Chatbot 组件在通过 senderProps 配置附件上传功能时,附件列表组件存在状态与视图不同步的问题。
无论是新增附件还是删除附件,底层数据状态均已正确变更,但视图层(UI)未检测到变化并进行重绘。目前观察到 UI 更新强依赖于输入框(Input)的状态变更(如输入文本触发 onChange),导致用户操作后界面无反馈

复现步骤

  • 配置 Chatbot 组件的 senderProps 属性以启用附件功能(与官网的例子一样)。
  • 场景一(新增): 点击上传并选择文件。
    现象: 控制台/数据层显示文件已加入列表,但 UI 列表区域为空/未更新。
  • 场景二(删除): 在列表中点击删除某文件。
    现象: 数据层列表已清空/移除,但 UI 仍残留该文件项。
  • 触发更新: 在输入框内输入任意字符。
    现象: 输入框重绘的同时,附件列表瞬间同步为最新数据状态(若执行过删除文件操作,则无效(文件UI将不再重绘))

期望结果

附件列表应当是独立响应式的。当内部文件数组发生变化(增/删)时,UI 应立即同步更新,不应依赖外部输入框的状态变更来触发渲染

实际结果

UI 渲染强依赖于输入框状态变更,无法独立响应附件数据的增删操作

框架版本

Vue(3.5.30)

浏览器版本

Edge(146.0.3856.109)

系统版本

Windows 10

Node版本

20.19.3

补充说明

No response

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions