我在要在Change上发布开关布尔值的地方遇到错误。我正在使用React / Typescript ...我想在这里做的是在handleChange()函数中发送布尔值的后请求,我该怎么做?
我遇到的当前错误是Type 'void' is not assignable to type '((event: ChangeEvent<HTMLInputElement>, checked: boolean) => void) | undefined'
interface IState {
application?: Map<{}, {}>;
hasChanged?: boolean;
checkedA?: boolean;
}
<div className={classes.switchContainer}>
<FormGroup row>
<FormControlLabel
control={
<Switch
checked={this.state.checkedA}
onChange={this.handleChange()}
value="checkedA"
>Toggle</Switch>
}label="YES"
/>
<Typography color="secondary" variant="body1" className={classes.toggleQuestions}>Is the Mentor information complete?</Typography>
</FormGroup>
</div>
@autobind
private handleChange() {
console.log("checkedA")
}
最佳答案
尝试使用onChange = {this.handleChange}
您的方式是,调用句柄更改并将其返回值(“ void”)设置为更改处理程序。在某些情况下,这可能是适当的,但不适用于您。