指南 · 06

时间轴

用一个可跳转的时钟驱动多条轨道:播放、暂停、跳转、倒放和变速。

同一时钟上的轨道

useTimeline(tracks, options, deps) 创建一个归组件所有的时间轴。每条轨道是一组关键帧,或 { values, times, at, duration },其中 at 和 duration 以毫秒为单位。

progress 是一个 CSS 变量,数值或长度类轨道都是它的 calc() 表达式,所以在普通 style 中使用的时间轴每帧只写入一个变量。

正在准备示例…

播放控制

play({ from, rate })、pause()、seek(ms) 和 reverse() 控制时钟。state、currentTime、duration 和 finished Promise 描述它的状态。repeat 和 repeatDelay 用于循环。

Title.jsx
const intro = useTimeline(
  {
    y: ['24px', '0px'],
    fade: { values: [0, 1], at: 0, duration: 300 },
    line: { values: [0, 1], at: 200, duration: 600 },
  },
  { duration: 800 },
);

intro.seek(400); // milliseconds
intro.play({ rate: 0.5 });
intro.reverse();

在 React 之外

createTimeline 是不依赖组件的同一个时钟。用完后请调用 dispose()。

搜索

输入关键词搜索文档。