Javascript 反应自然复苏平行

Javascript 反应自然复苏平行,javascript,reactjs,react-native,expo,Javascript,Reactjs,React Native,Expo,是否还有其他方法来模拟react本机动画并行?我想同时为特定组件运行多个动画您可以使用并行运行动画,也可以使用插值 使用插值,可以将值从一个动画映射到另一个动画。如果希望某些动画响应其他动画的值,此选项非常有用。使用插值,可以在零部件(A和B)中创建多个动画视图: 就像从屏幕按钮显示一个元素animationA时,您希望另一个元素移动,animationB 要实现这一点,请从animationA创建一个动画,该动画将成为animationB const animationB = animatio

是否还有其他方法来模拟react本机动画并行?我想同时为特定组件运行多个动画

您可以使用并行运行动画,也可以使用插值

使用插值,可以将值从一个动画映射到另一个动画。如果希望某些动画响应其他动画的值,此选项非常有用。使用插值,可以在零部件(A和B)中创建多个动画视图:

就像从屏幕按钮显示一个元素animationA时,您希望另一个元素移动,animationB

要实现这一点,请从animationA创建一个动画,该动画将成为animationB

const animationB = animationA.interploate({
  inputRange: [ 0, 150],
  outputRange: [150, 0]
});

动画B,现在做的是与动画A相反的事情

使用块而不是平行:

    Animated.block([
        Animated.timing(keyboardHeight.current, {
            duration: event.duration + 100,
            toValue: event.endCoordinates.height + 10,
            easing: Easing.inOut(Easing.ease)
        }).start(),
        Animated.timing(buttonOpacity.current, {
            duration: event.duration + 100,
            toValue: 1,
            easing: Easing.inOut(Easing.ease)
        }).start()
    ])

是的,你可以。首先使用animated.timing或animated.spring创建对象。创造许多这样的环境。动画。弹簧有利于反弹和真实世界效果。您还需要了解摩擦和张力特性。然后使用Animated.parallel调用对象

 const rotateAnim=   Animated.timing(this.state.rotate,{
        toValue:1,
        duration:2000,
        useNativeDriver:true,
    })
    const borderAnim=   Animated.timing(this.state.border,{
        toValue:50,
        duration:2000,
        useNativeDriver:true,
    })
    Animated.parallel([
        fallAnim,
        rotateAnim,
        borderAnim,
    ]).start();
}
转到完整教程

我不明白你的问题。你能澄清一下吗?为什么要模拟动画?