javascript - Void 类型不可分配给 Boolean 类型(React/Typescript)

标签 javascript reactjs typescript ecmascript-2016

我想在 Change 上发布 switch bool 值时遇到错误。我正在使用 React/Typescript...我想在这里执行的操作是在handleChange() 函数中发送 bool 值的发布请求,我该怎么做?

我收到的当前错误是 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”)设置为更改处理程序。在某些情况下这可能是合适的,但不适合您的情况。

关于javascript - Void 类型不可分配给 Boolean 类型(React/Typescript),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54166055/

相关文章:

javascript - 如何防止/停止焦点进入下一个输入文本元素?

javascript - 对象来自哪个 Meteor 集合?

javascript - 有没有人遇到过这个奇怪的 html5 视频播放问题?黑色元素,无法加载

javascript - 循环 this.props.children 我如何测试他们的类型?

javascript - 为什么reducer返回false时会返回undefined?

javascript - React render for 循环运行两次

angular - 如何在 Angular 6 的 keyup 事件中实现去抖动时间

javascript - 将对象转换为 json

reactjs - React + Formik + 是的异步验证

angular - 带有 angular-cli 的 SVG 图标系统