首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何停止react-spring循环动画

如何停止react-spring循环动画
EN

Stack Overflow用户
提问于 2021-04-21 18:52:53
回答 1查看 148关注 0票数 0

我有一个简单的脉冲计时器。当时间达到"0“时,我想停止脉冲动画。我对react-spring是个新手,如果有人知道怎么做,请帮帮忙。

代码语言:javascript
复制
const Timer = ({time = 0}) => {
    const [timer, setTimer] = useState(time);

    const props = useSpring({
        config: {duration: 1000},
        from: { scale: 1 },
        to: {scale: 1.1},
        loop: timer > 0,
    });

    useEffect(() => {
        if (!timer) return;

        const intervalId = setInterval(() => {
            setTimer(timer - 1);
        }, 1000);

        return () => clearInterval(intervalId);
    }, [timer])

    return (<animated.div style={props} className={'timer-main'}>
        { timer }
    </animated.div>)
}
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-04-21 20:01:54

我用一个“不太理想”的解决方案修复了它,但仍然对更好的解决方案持开放态度。

代码语言:javascript
复制
return (<animated.div style={timer > 0 ? props : {}} className={'timer-main'}>
        { timer }
    </animated.div>)
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67194404

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档