我正在制作一个菜单,用于更改Google Maps API的类型,但是按下的状态无法正常运行。请注意,在函数this.state.pressed
上更改setPressedState
之后,Text组件内部的状态不会被重新渲染,并且在使用{之后,不会重新渲染包含MapMenu
组件的组件上的状态。 {1}}。
注意:警报显示按下的状态正在更改。
getPressed
答案 0 :(得分:5)
要重新渲染组件,您需要使用official documentation中提到的setState
方法,即:
通常,您应该在构造函数中初始化状态,然后在要更改状态时调用setState。
看到这个
setPressedState = (press) => {
this.setState({pressed:press}, () => {
Alert.alert(this.state.pressed)
});
}
答案 1 :(得分:0)
这不是正确的操作方式,您不应像其他任何使用变量一样使用state并使用赋值运算符
在对变量和常量进行反应时,您可以使用赋值运算符, 但如果是州,则应使用。
setState({
stateVariable:NewValue
})