Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/react-native/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
React native 使用useNativeDriver时通过错误反应本机动画:真为什么?_React Native - Fatal编程技术网

React native 使用useNativeDriver时通过错误反应本机动画:真为什么?

React native 使用useNativeDriver时通过错误反应本机动画:真为什么?,react-native,React Native,尝试使用react native的动画库生成波浪动画。当我将useNativeDriver设置为false时,它正在工作,但它有延迟。但当我把它设为真时,它就给出了错误 尝试在先前已移动到“本机”的动画节点上运行JS驱动的动画,方法是使用“useNativeDriver:true”启动动画 如何修复此问题以使动画平滑工作 import React,{useState,useffect}来自“React”; 从“react native”导入{Animated,View,StyleSheet};

尝试使用react native的动画库生成波浪动画。当我将useNativeDriver设置为false时,它正在工作,但它有延迟。但当我把它设为真时,它就给出了错误

尝试在先前已移动到“本机”的动画节点上运行JS驱动的动画,方法是使用“useNativeDriver:true”启动动画

如何修复此问题以使动画平滑工作

import React,{useState,useffect}来自“React”;
从“react native”导入{Animated,View,StyleSheet};
导出默认WaveAnimation=React.memo(()=>{
const[animatedValue,setAnimatedValue]=useState(新的Animated.Value(0))
常数[opacityA,setOpacityA]=useState(新的动画值(0.3))
const[animatedValue1,setAnimatedValue1]=useState(新的Animated.Value(0))
const[opacityB,setOpacityB]=useState(新的动画.Value(0.3))
const[animatedValue2,setAnimatedValue2]=useState(新的Animated.Value(0))
常数[opacityC,setOpacityC]=useState(新的动画值(0.3))
const[animatedValue3,setAnimatedValue3]=useState(新的Animated.Value(0))
常数[opacityD,setOpacityD]=useState(新的动画值(0.3))
常数AnimationTime=4000;
常量animateWave=()=>{
动画。交错(1000[
动画循环(
平行动画([
动画。计时(动画值1{
toValue:1,
持续时间:动画时间,
useNativeDriver:错误
}),
动画。计时(不透明{
toValue:0,
持续时间:动画时间,
useNativeDriver:错误
}),
])
),
动画循环(
平行动画([
动画。计时(动画值{
toValue:1,
持续时间:动画时间,
useNativeDriver:错误
}),
动画。计时(不透明{
toValue:0,
持续时间:动画时间,
useNativeDriver:错误
}),
])
),
动画循环(
平行动画([
动画。计时(动画值2{
toValue:1,
持续时间:动画时间,
useNativeDriver:错误
}),
动画。计时(不透明{
toValue:0,
持续时间:动画时间,
useNativeDriver:错误
}),
])
),
动画循环(
平行动画([
动画。计时(动画值3{
toValue:1,
持续时间:动画时间,
useNativeDriver:错误
}),
动画。计时(不透明{
toValue:0,
持续时间:动画时间,
useNativeDriver:错误
}),
])
),
]).start()
}
useffect(()=>{
动画视频()
}, [])
返回(
)
})
const styles=StyleSheet.create({
waveStyle:{borderRadius:200,width:400,height:400,backgroundColor:'#000',position:'绝对',zIndex:999999,alignItems:'中心',justifyContent:'中心',}

})
本机仅支持一些值,如transform、opacity和其他一些值。对于不支持的值,动画由JS bridge驱动,它会阻止JS线程。因此,可能您在同一时间运行了太多JS动画,和/或同时运行了其他阻止代码。只需尝试不要过载动画,并且不允许不要同时发送请求或其他内容。

您不应该在动画API中使用状态。只需使用值本身,它们不会导致不必要的循环。