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>
        );
    }
}