Skip to content

[犀牛鸟]feat(textarea): support clearable - #6764

Open
AriaLEntropy wants to merge 5 commits into
Tencent:developfrom
AriaLEntropy:feat/textarea-clearable
Open

[犀牛鸟]feat(textarea): support clearable#6764
AriaLEntropy wants to merge 5 commits into
Tencent:developfrom
AriaLEntropy:feat/textarea-clearable

Conversation

@AriaLEntropy

@AriaLEntropy AriaLEntropy commented Jul 1, 2026

Copy link
Copy Markdown

🤔 这个 PR 的性质是?

  • 日常 bug 修复
  • 新特性提交
  • 文档改进
  • 演示代码改进
  • 组件样式/交互改进
  • CI/CD 改进
  • 重构
  • 代码风格优化
  • 测试用例
  • 分支合并
  • 其他

🔗 相关 Issue

Tencent/tdesign-common#2566

依赖 common PR:Tencent/tdesign-common#2583

💡 需求背景和解决方案

Textarea 当前缺少与 Input 一致的可清空能力。本 PR 为 Vue Next Textarea 组件补充 clearable API、交互逻辑、示例和测试,使多行文本输入可以快捷清空。

实现内容:

  • 新增 clearable prop
  • 新增 onClear 回调
  • 仅在有内容、非 disabled、非 readonly 且鼠标悬浮时展示清除图标
  • 点击清除图标后清空内容
  • 清空后触发 change,trigger 为 clear
  • 清空后重新聚焦 Textarea
  • 新增 clearable demo
  • 更新 Textarea 中英文文档与 usage props
  • 新增单元测试覆盖 clearable 主路径

交互行为对齐现有 Input clearable:仅在 clearable 开启、存在输入内容、非 disabled、非 readonly 且鼠标悬浮时展示清除入口,并复用 CloseCircleFilledIcon 作为清除控件。

公共视觉样式由 tdesign-common 提供,本仓库只负责组件交互逻辑、事件触发、demo 与测试。

效果展示:
vue上部分

vue

注:效果图为本地录制。录制时临时应用了依赖的 common 样式 patch,用于预览最终联动效果;提交前已移除该临时 patch,本 PR 不包含 packages/common 子模块变更。

📝 更新日志

  • 本条 PR 不需要纳入 Changelog

tdesign-vue-next

  • feat(Textarea): 支持 clearable 可清空能力

@tdesign-vue-next/chat

@tdesign-vue-next/nuxt

@tdesign-vue-next/auto-import-resolver

☑️ 请求合并前的自查清单

⚠️ 请自检并全部勾选全部选项⚠️

  • 文档已补充或无须补充
  • 代码演示已提供或无须提供
  • TypeScript 定义已补充或无须补充
  • Changelog 已提供或无须提供

@Wesley-0808 Wesley-0808 changed the title feat(textarea): support clearable [犀牛鸟]feat(textarea): support clearable Jul 20, 2026
@tdesign-bot

tdesign-bot commented Jul 29, 2026

Copy link
Copy Markdown
Collaborator

TDesign Component Site Preview Open

Component Preview
tdesign-vue-next 完成
@tdesign-vue-next/chat 完成

@pkg-pr-new

pkg-pr-new Bot commented Jul 29, 2026

Copy link
Copy Markdown
  • tdesign-vue-next-demo

    npm i https://pkg.pr.new/@tdesign-vue-next/auto-import-resolver@6764
    
    npm i https://pkg.pr.new/tdesign-vue-next@6764
    
    npm i https://pkg.pr.new/@tdesign-vue-next/chat@6764
    
    npm i https://pkg.pr.new/@tdesign-vue-next/nuxt@6764
    

commit: 6969a74

@AriaLEntropy

Copy link
Copy Markdown
Author

已同步关联的样式 PR Tencent/tdesign-common#2583 到最新 develop,两个 PR 当前均为可合并状态。

此前 MAIN_PULL_REQUEST 中 textarea 的 21 个测试均已通过。测试任务是在 3533 个测试通过后,由 upload.test.tsx 在测试环境销毁后产生未处理异步异常而失败。本地使用 Node.js 22 验证,textarea 定向测试、lint 和 build 均已通过。

当前新提交的 Actions 状态为 action_required,麻烦维护者批准并运行 workflows,谢谢。

@uyarn

uyarn commented Jul 29, 2026

Copy link
Copy Markdown
Collaborator

已同步关联的样式 PR Tencent/tdesign-common#2583 到最新 develop,两个 PR 当前均为可合并状态。

此前 MAIN_PULL_REQUEST 中 textarea 的 21 个测试均已通过。测试任务是在 3533 个测试通过后,由 upload.test.tsx 在测试环境销毁后产生未处理异步异常而失败。本地使用 Node.js 22 验证,textarea 定向测试、lint 和 build 均已通过。

当前新提交的 Actions 状态为 action_required,麻烦维护者批准并运行 workflows,谢谢。

好的,我们正在集中开始review大家的提交

@uyarn

uyarn commented Jul 29, 2026

Copy link
Copy Markdown
Collaborator

/update-common 2583

@uyarn uyarn added the 💭 discussion we are discussing label Jul 29, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

💭 discussion we are discussing

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants