Reactjs 交错:如何返回初始位置

Reactjs 交错:如何返回初始位置,reactjs,gsap,Reactjs,Gsap,早上好 我从GSAP开始,尝试为我的输入制作动画,以返回到我在css中输入的初始位置 函数窗格({className,open,children}){ 常量[Isopen,setIsopen]=React.useState(false) React.useffect(()=>{ var input=document.querySelectorAll('.pannel_uuinput'); console.log(输入) console.log(打开) 如果(打开==真){ TweenMax.sc

早上好

我从GSAP开始,尝试为我的输入制作动画,以返回到我在css中输入的初始位置

函数窗格({className,open,children}){ 常量[Isopen,setIsopen]=React.useState(false)

React.useffect(()=>{
var input=document.querySelectorAll('.pannel_uuinput');
console.log(输入)
console.log(打开)
如果(打开==真){
TweenMax.scatterto(输入,1,{left:0,ease:“power2.easeout”},0.2);
}否则如果(打开!=等参线){
TweenMax.scatterfrom(输入,0.4,{left:0,ease:“power2.easeout”},0.2);
}
塞西彭(开放);
},[开放];
返回(
{儿童}
)
我开始做出一个惊人的决定,允许我的输入显示在屏幕上。 点击一个按钮后,我做了一个参差,我希望参差能将我的输入返回到他的原始位置,但实际上它保持在他的实际位置。我必须改变什么才能使我的输入从屏幕上消失。初始位置可以改变,所以我不能输入原始值


提前感谢。

嘿,Romain。你使用了很多旧的GSAP语法,这是其中之一。至于你的问题,最好在开始时记录值,然后在需要时使用该记录。如果GSAP总是在每个二人的每个目标的每个属性的开始处跟踪值,以防需要在将来,这将是对内存和处理的巨大浪费。
React.useEffect(() => {
    var input = document.querySelectorAll('.pannel__input');
    console.log(input)
    console.log(open)
    if (open == true) {
        TweenMax.staggerTo(input, 1, {left:0, ease: "power2.easeout"}, 0.2);
    } else if (open != Isopen) {
        TweenMax.staggerFrom(input, 0.4, {left:0, ease: "power2.easeout"}, 0.2);
    }

    setIsopen(open);
}, [open]);

return (
    <div className={className + " " + (Isopen? "open" : "close")}>
        {children}
    </div>
)