javascript - 在 JSX 中 onClick 时切换变量

标签 javascript reactjs

我的构造函数中有一个默认状态

this.state {
    showModal:false
}

那么如何在不声明函数的情况下切换值,但立即在 JSX 中执行此操作?我发现在函数中执行此操作的代码太多。难道不能更简单吗,就像这样做

render(){
    return(<div onClick={()=>this.setState({showModal:!showModal})}></div>)
}

但是我在上面的 JSX 中遇到了语法错误。为什么?

最佳答案

请记住,React 状态维护在 this.state 中属性,因此您需要引用 this.state.showModal ,不是this.showModal .

正确的做法是:

<div onClick={() =>
    this.setState({showModal: !this.state.showModal})}>
</div>

至于仅使用 JSX 来执行此操作(不声明函数),这是不可能的。 JSX JavaScript。

关于javascript - 在 JSX 中 onClick 时切换变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42184485/

相关文章:

javascript - 未知提供者 : $scopeProvider

javascript - 仅更改新创建的行的元素 id

javascript - 用于首选 React 类组件语法的 eslint 规则

javascript - Reactjs,当我删除元素时数组索引发生变化

javascript - 如何使用 React 应用程序将 ASP.NET Core Controller 操作 View 之一访问到 iframe 中?

reactjs - 通过 React 形成功能组件

javascript - 将每次调用函数时的数据添加到State的数组对象中

javascript - JQgrid:单击 JQgrid header 时是否会触发任何事件?

javascript - 如何显示html5视频的观看次数?

javascript - 维持 NPM 依赖项的变化