在react-native中使用Animated.Value()的最佳方法是什么?
是否具有useState()?
const [fadeAnim] = useState(new Animated.Value(0))
或
const fadeAnim = new Animated.Value(0)
本机文档:https://facebook.github.io/react-native/docs/animations
谢谢
答案 0 :(得分:2)
我遇到了一个令人迷惑的UI错误,该错误中的设置挂钩值会立即在视图中呈现并弄乱动画。我通过将动画值放在useState挂钩中来解决此问题,如下所示:
之前:
const foo = new Animated.Value(1)
之后:
const [foo] = useState(new Animated.Value(1));
答案 1 :(得分:1)
实际上,钩子是更好的方法,所以我要先选择
答案 2 :(得分:0)
我最近一直在使用它:
const [fadeAnim] = useState(() => new Animated.Value(0));
,对于设定值,标准:
fadeAnim.setValue(0);
此外,您可能还想看看useRef
,因为这是documentation的建议:
const fadeAnim = useRef(new Animated.Value(0)).current;
/*
...
*/
fadeAnim.setValue(0);