根据最佳实践,组件状态应该是不可变的。 但是,至少在表面上,反应原生的Animated类似乎违反了这个要求。
我们应该在组件状态之外设置动画值吗?
//from the example in https://facebook.github.io/react-native/docs/animations.html
componentDidMount() {
//look ma, you're changing a stateful value directly!
this.state.bounceValue.setValue(1.5);
//not sure how this works under the hood, but it looks to be doing the same thing
Animated.spring(this.state.bounceValue, {
toValue: 0.8,
friction: 1,
}).start()
}
答案 0 :(得分:0)
在阅读了你提到的文件后,我找到了这个有用的句子 -
这是以优化的方式完成的,比调用
setState
更快 并重新渲染。因为整个配置是声明性的,我们 将能够实现序列化的进一步优化 配置并在高优先级线程上运行动画。
我希望这能满足您的疑问!