Javascript onClick函数不调用方法
我有一个React项目,当属性isSelectedNumber将其状态更改为true时,会呈现组件SubmitButton。组件SubmitButton是一个可以单击的按钮,当使用onClick函数单击该按钮时,它将调用一个方法,这将导致组件NextButton将呈现的属性IssubMitched更改为true 问题是只渲染SubmitButton,当我单击组件SubmitButton的按钮时,它不会渲染组件NextButton 这是包装器组件的一部分,如果条件为true,将在其中呈现两个组件Javascript onClick函数不调用方法,javascript,reactjs,Javascript,Reactjs,我有一个React项目,当属性isSelectedNumber将其状态更改为true时,会呈现组件SubmitButton。组件SubmitButton是一个可以单击的按钮,当使用onClick函数单击该按钮时,它将调用一个方法,这将导致组件NextButton将呈现的属性IssubMitched更改为true 问题是只渲染SubmitButton,当我单击组件SubmitButton的按钮时,它不会渲染组件NextButton 这是包装器组件的一部分,如果条件为true,将在其中呈现两个组件
{this.state.isSelectedNumber ? <SubmitButton handleClickSumbmit={this.handleClickSumbmit}/> : null}
{this.state.isSubmitClicked ? <NextButton /> : null}
我想知道你是否知道会发生什么以及如何解决它。你有打字错误
改变
<button type="button" onClick={this.props.handleClickSubmit}></button>
到
此外,函数名在代码中没有意义。将handleClickSumbmit更改为handleClickSubmit,只要您有handleClickSumbmit
另外,因为您使用的是常规函数,所以必须在构造函数中绑定它。我希望您已经这样做了。我认为您应该检查
handleClickSubmit
的调用,您将其称为handleClickSumbmit
,也许这就是问题所在。您是否在构造函数中硬绑定了handleClickSumbmit
方法this.handleClickSumbmit=this.handleClickSumbmit.bind(this)代码>与您的问题无关,但是有条件地显示组件的更简洁的方法是{this.state.isSubmitClicked&&}它是函数声明中的一个输入错误,或者是从按钮调用它时的输入错误。
handleClickSumbmit () {
this.setState({
isSubmitClicked: true
});
}
<button type="button" onClick={this.props.handleClickSubmit}></button>
<button type="button" onClick={this.props.handleClickSumbmit}></button>