Skip to content

breaking(rate): 对齐评分组件契约、交互与示例 - #1056

Merged
RSS1102 merged 8 commits into
developfrom
rss1102/feat/rate-demo-alignment
Aug 28, 2026
Merged

breaking(rate): 对齐评分组件契约、交互与示例#1056
RSS1102 merged 8 commits into
developfrom
rss1102/feat/rate-demo-alignment

Conversation

@RSS1102

@RSS1102 RSS1102 commented Aug 27, 2026

Copy link
Copy Markdown
Collaborator

🤔 这个 PR 的性质是?

勾选规则:
1.只要有新增参数,就勾选”新特性提交“
2.只修改内部bug,未新增参数,才勾选”日常 bug 修复“
3.其他选项视具体改动判断

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

🔗 相关 Issue

无关联 Issue。

💡 需求背景和解决方案

Rate 组件原有文案状态、整星归一化、RTL 命中、读屏信息与交互生命周期存在多套语义,公开 Demo 也未完整覆盖小程序的组件类型、状态和带描述评分示例。本 PR 收敛组件契约,并以 Flutter 设计模式对齐公开 Demo:

  • 移除 TRateThemeData.showText,统一以 TRate.texts 作为评分文案入口;未传入时不显示文案,空列表或越界时显示“未评分”。
  • 新增 TRate.showValueIndicator,默认开启整星点击、长按和拖动时的当前值提示;设置为 false 可维持旧视觉反馈,且不会关闭半星点击的精确选择能力。
  • 当前值提示与半星选择浮层固定锚定评分项;长按后移动、拖动和越过起始端清零均复用受控回调链,并保证单次交互只产生一组开始/结束回调。
  • 修复整星小数值归一化、半星文案索引、RTL 命中与裁剪、Semantics 数值/描述以及有界和无界布局下的长文案行为。
  • Demo 补充 Cupertino 心形第三方图标,并将带描述评分展示为 3分一般未评分 三个独立栏;布局、尺寸、色彩和间距使用 TDesign token。
  • 增加组件测试、双版本 Demo 功能回归与 Flutter 3.32.0 Linux light/dark Golden,生产 Rate 源码行覆盖率为 358/365(98.08%)。

相关实现与行为契约见 specs/017-rate-contract-hardening/

Light / Dark Demo Golden:

Rate light

Rate dark

📝 更新日志

  • breaking(rate): 移除 TRateThemeData.showText,评分文案统一由 TRate.texts 控制

  • breaking(rate): 整星点击、长按和拖动默认显示评分提示,新增 showValueIndicator: false 以关闭该提示

  • fix(rate): 修复整星小数归一化、半星与 RTL 命中、拖动清零、交互生命周期、读屏信息及长文案布局

  • 本条 PR 不需要纳入 Changelog

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

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

  • 标题遵循 Conventional Commits 格式:type(<scope>?): 修改描述
    示例:fix(TBottomTabBar): 修复 iconText 模式底部溢出
  • “相关 Issue”处带上修复的 Issue 链接或无关联 Issue
  • 已添加对应的 Spec 链接,或已由 Review 确认本次改动无需 Spec
  • 相关文档已补充或无须补充

@github-actions

github-actions Bot commented Aug 27, 2026

Copy link
Copy Markdown
Contributor

完成

Web Demo

APK 下载

@tencent-adm

Copy link
Copy Markdown
Member

CLA assistant check
Thank you for your submission, we really appreciate it. Like many open source projects, we ask that you all sign our Contributor License Agreement before we can accept your contribution.
1 out of 2 committers have signed the CLA.

✅ RSS1102
❌ autofix-ci[bot]
You have signed the CLA already but the status is still pending? Let us recheck it.

@RSS1102 RSS1102 changed the title feat(rate): 对齐评分组件示例 breaking(rate): 对齐评分组件契约、交互与示例 Aug 28, 2026
@RSS1102
RSS1102 merged commit 1c5ac0c into develop Aug 28, 2026
17 of 18 checks passed
@RSS1102
RSS1102 deleted the rss1102/feat/rate-demo-alignment branch August 28, 2026 09:37
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants