我遇到了React-Native
的问题我的州: Windows 10 - Hyper V,Visual Studio Emulator Android。
我的页面上有一个组件(显示在我点击的位置)。
单击时,将在组件中发送坐标。
< ClickAnimation x = {item.x} y = {item.y} />
该组件首先具有以下内容:
state = {
scaleAnim: 2
};
当我再次点击时,this.state.scaleAnim更改为0.001
componentWillReceiveProps(nextProps) {
if (nextProps.x != this.props.x) {
this.setState({scaleAnim: 0.001})
}
}
那就是渲染:
render() {
if (this.state.scaleAnim) {
return <Animated.View
key={this.props.y * this.props.x}
style={{
zIndex: 10,
borderColor: "blue",
borderRadius: 400,
borderWidth: 1,
position: "absolute",
top: this.props.y,
left: this.props.x,
width: 60,
height: 60,
backgroundColor: "red",
transform: [
{
scaleY: this.state.scaleAnim
}, {
scaleX: this.state.scaleAnim
}
]
}}>
<Text>{this.state.scaleAnim}</Text>
</Animated.View>
} else {
return <View/>
};
}
使用此代码,我有以下内容:
setState会更改值,因为文本会更改。但不适用的风格。
你知道为什么吗?
答案 0 :(得分:3)
我认为它可能与FB错误https://github.com/facebook/react-native/issues/6278有关 - 请尝试将比例设置为0.1
或0.01
并进行实验,直到它仍然适用于您以及它何时中断。