我遇到一个错误,我想在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")
}
答案 0 :(得分:2)
改为尝试onChange = {this.handleChange} 您正在通过调用处理更改并将其返回值(“ void”)设置为更改处理程序。在某些情况下,这可能是适当的,但您不适合。