在反应中链接关键帧-spring
Chaining keyframes in react-spring
我正在尝试为 cta 按钮制作微动类型的动画,在指定的延迟后 运行s 以吸引观众的注意力。
但它并没有像预期的那样工作,因为如果你看到 spring 对象
useSpring({
loop: true,
delay: 1000,
config: { tension: 200, friction: 5 },
from: { scaleX: 1, scaleY: 1, y: 0 },
to: [
{ scaleX: 1.1, scaleY: 0.9, y: 3 },
{ scaleX: 1, scaleY: 1, y: 0 }
]
});
我在 to
属性 中有两个关键帧,因此我希望它在跳回其原始大小之前缩小一点。
但问题是它在两个关键帧之间添加了 delay
,正如您在我的 codesandbox 示例中看到的那样。相反,我希望关键帧立即 运行 没有延迟,同时保持每个完整抖动的延迟。
说实话,这个库的文档对我没什么帮助。
感觉像是延迟,但实际上,它只是第一个动画关键帧在下一个开始之前完成。
尝试将持续时间添加到您的配置中 config: { tension: 200, friction: 5, duration: 200 },
或者
尝试将 clamp 添加到您的配置 config: { tension: 200, friction: 5, clamp: true },
React-Spring 使用物理动画,我刚开始的时候也被这个绊倒了。插值发生在小范围内,因此您不会注意到它们仍然是 运行.
import { animated, useSpring, config } from "react-spring";
import styled from "styled-components";
export default function App() {
const jiggleSpring = useSpring({
loop: true,
delay: 2000,
config: config.stiff,
from: { scaleX: 1, scaleY: 1, y: 0 },
to: [
{ scaleX: 1.1, scaleY: 0.9, y: 3 },
// I don't want the delay between these keyframes
{ scaleX: 1, scaleY: 1, y: 0 }
]
});
我也会尝试单独导入配置并尝试不同的配置。
我正在尝试为 cta 按钮制作微动类型的动画,在指定的延迟后 运行s 以吸引观众的注意力。
但它并没有像预期的那样工作,因为如果你看到 spring 对象
useSpring({
loop: true,
delay: 1000,
config: { tension: 200, friction: 5 },
from: { scaleX: 1, scaleY: 1, y: 0 },
to: [
{ scaleX: 1.1, scaleY: 0.9, y: 3 },
{ scaleX: 1, scaleY: 1, y: 0 }
]
});
我在 to
属性 中有两个关键帧,因此我希望它在跳回其原始大小之前缩小一点。
但问题是它在两个关键帧之间添加了 delay
,正如您在我的 codesandbox 示例中看到的那样。相反,我希望关键帧立即 运行 没有延迟,同时保持每个完整抖动的延迟。
说实话,这个库的文档对我没什么帮助。
感觉像是延迟,但实际上,它只是第一个动画关键帧在下一个开始之前完成。
尝试将持续时间添加到您的配置中 config: { tension: 200, friction: 5, duration: 200 },
或者
尝试将 clamp 添加到您的配置 config: { tension: 200, friction: 5, clamp: true },
React-Spring 使用物理动画,我刚开始的时候也被这个绊倒了。插值发生在小范围内,因此您不会注意到它们仍然是 运行.
import { animated, useSpring, config } from "react-spring";
import styled from "styled-components";
export default function App() {
const jiggleSpring = useSpring({
loop: true,
delay: 2000,
config: config.stiff,
from: { scaleX: 1, scaleY: 1, y: 0 },
to: [
{ scaleX: 1.1, scaleY: 0.9, y: 3 },
// I don't want the delay between these keyframes
{ scaleX: 1, scaleY: 1, y: 0 }
]
});
我也会尝试单独导入配置并尝试不同的配置。