Reactjs 复选框切换不';不能正常工作,不能正常反应
我有这个例子Reactjs 复选框切换不';不能正常工作,不能正常反应,reactjs,react-native,react-native-android,Reactjs,React Native,React Native Android,我有这个例子 constructor(props) { super(props); this.state = { check: true, };} checkBoxtTest(){ this.setState( {check:!this.state.check})} 返回时 this.checkBoxtTest()} /> 当我再次按下复选框时,值不会改变您的输入错误为“onChange” <CheckBox value={this.sta
constructor(props) {
super(props);
this.state = {
check: true,
};}
checkBoxtTest(){
this.setState(
{check:!this.state.check})}
返回时
this.checkBoxtTest()}
/>
当我再次按下复选框时,值不会改变您的输入错误为“onChange”
<CheckBox
value={this.state.check} onChange={()=>this.checkBoxtTest()}
/>
您可以使用箭头函数代替普通函数
checkBoxtTest = () => {
this.setState((prevState) => ({check: !prevState.check}));
}
首先,将其更改为
onChange
。您的checkBoxTest
应该绑定到构造函数中,这是推荐的最佳做法
constructor(props) {
super(props);
this.state = {
check: true,
};
this.checkBoxtTest = this.checkBoxtTest.bind(this);
}
checkBoxtTest(){
this.setState({
check : !this.state.check
})
}
<CheckBox value={this.state.check} onChange={this.checkBoxtTest()} />
构造函数(道具){
超级(道具);
此.state={
检查:正确,
};
this.checkBoxtTest=this.checkBoxtTest.bind(this);
}
checkboxtest(){
这是我的国家({
检查:!this.state.check
})
}
从“React”导入React,{Component};
从“本机基”导入{容器、内容、列表项、复选框、文本、正文};
导出默认类应用程序扩展组件{
建造师(道具){
超级(道具);
此.state={
核对:正确
}
}
render(){
返回(
this.setState({checked:!this.state.checked})
/>
完成列表屏幕
);
}
}
this.setState((prevState)=>({check:!prevState.check}))。。使用this.state.check更改状态本身可能会产生一些问题,如果您的代码变得复杂,那么我们必须始终使用setState函数Shubham Agarwal Bhewanewala提供的先前状态。这有助于我感谢您我使用了本机base,而不是react native,,这很有效!非常感谢。
checkBoxtTest = () => {
this.setState((prevState) => ({check: !prevState.check}));
}
constructor(props) {
super(props);
this.state = {
check: true,
};
this.checkBoxtTest = this.checkBoxtTest.bind(this);
}
checkBoxtTest(){
this.setState({
check : !this.state.check
})
}
<CheckBox value={this.state.check} onChange={this.checkBoxtTest()} />
import React, { Component } from 'react';
import { Container, Content, ListItem, CheckBox, Text, Body } from 'native-base';
export default class App extends Component {
constructor(props) {
super(props);
this.state = {
checked: true
}
}
render() {
return (
<Container>
<Content>
<ListItem>
<CheckBox
checked={this.state.checked}
onPress={() => this.setState({checked: !this.state.checked})}
/>
<Body>
<Text>Finish list Screen</Text>
</Body>
</ListItem>
</Content>
</Container>
);
}
}