Руководства · 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 и promise finished описывают их. 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().

Поиск

Начните вводить, чтобы искать в документации.