【问题标题】:Framer Motion: Animation Will not LoopFramer Motion:动画不会循环播放
【发布时间】:2021-12-21 13:00:56
【问题描述】:

我正在尝试使用 Framer Motion 库在一小段延迟后循环播放动画。动画本身会在加载时播放,在网页刷新时播放,但不会重复。 我浏览了文档,这似乎是相似的语法。


const AnimateTrial = {
  initial: {
    opacity: 0,
    x: -100,
    y: -35,
    scale: 0.9,
  },
  animate: (i) => {
    const delay = 5 + i * 0.5;
    return {
      opacity: 1,
      x: -10,
      y: -35,

      transition: {
        opacity: { delay, duration: 1.5 },
        x: { delay, duration: 1.5},
        repeatType: "Infinity",
        repeatDelay: 5,
      },
    };
  }

有人有想法吗?一切正常减去底部两行!

【问题讨论】:

    标签: javascript reactjs framer-motion


    【解决方案1】:

    你的过渡对象内的属性不正确。用repeat代替repeatType,这样写

    transition={{ repeat: Infinity, repeatDelay: 5 }}

    如果您检查 docs repeateType 属性仅接受 "loop" "reverse" "mirror" 而不是 "Infinity"

    【讨论】:

    • 嗨@Simran,不幸的是这实际上并不是循环动画。 SVG 是动画的,而不是 DIV,这毫无价值。我有以下对象:` const AnimateTrial = { initial: { opacity: 0, scale: 0.37, y:-10, x:-500, }, animate: (i) => { const delay = 5 + i * 0.5 ;返回{不透明度:1,比例:0.37,y:-10,x:-255,过渡:{重复:无限,repeatDelay:5,},}; } }; `
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2022-11-21
    • 2022-01-15
    • 1970-01-01
    • 1970-01-01
    • 2023-02-13
    • 1970-01-01
    • 2022-10-17
    相关资源
    最近更新 更多