Skip to content

fix(plot): 修复 loop 动画仅执行一轮 - #79

Merged
wang-kaopu merged 3 commits into
omdsh-dev:mainfrom
wang-kaopu:fix/plot-loop-animation
Aug 28, 2026
Merged

fix(plot): 修复 loop 动画仅执行一轮#79
wang-kaopu merged 3 commits into
omdsh-dev:mainfrom
wang-kaopu:fix/plot-loop-animation

Conversation

@wang-kaopu

Copy link
Copy Markdown
Collaborator

问题

Plot 参数动画开启 loop: true 后只运行一轮。

旧实现完成一轮时调用:

setPlaying(p => p)

这不会改变 state,因此不会重新触发 animation effect,下一轮动画不会真正启动。

修复

让同一个 RAF animation chain 在一轮结束后直接开始下一 cycle:

  • 重置 cycle 起点和时间;
  • 重置 parameter / progress;
  • 直接继续调度下一帧;
  • pause / cleanup 时取消当前 RAF。

测试

新增 fake RAF / performance 回归测试:

  • loop: true 可以进入第二轮;
  • pause 会终止正在运行的 RAF chain。

验证

提交 PR 前已执行:

  • pnpm run check
  • 同步提交重新构建的 lib/ 产物

@wang-kaopu
wang-kaopu force-pushed the fix/plot-loop-animation branch from d1e50e8 to 663e58e Compare August 28, 2026 13:20
@wang-kaopu
wang-kaopu merged commit 3fa41fb into omdsh-dev:main Aug 28, 2026
2 checks passed
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.

1 participant