gpt4 book ai didi

javascript - 使用 React JS 的 HandleClick 不使用绑定(bind)

转载 作者:行者123 更新时间:2023-11-30 11:20:20 25 4
gpt4 key购买 nike

这是我的 react 代码

handleRemoveClick = material => {
let idMaterial = material.material_id;
if(this.state.operation === 0){
this.setState( { previewShowAlertRemoveProduct : true })
}
this.setState( { operation : 1, material_id : idMaterial})
}



handleEndOrder(){
if(this.state.operation === 0){
this.setState( { previewShowAlertRemoveProduct : true })
}
this.setState( { operation : 2})
}

这是为了渲染 View :

  <button class="btn btn-xs btn-danger pull-right"  onClick={e => this.handleRemoveClick(material)}>x</button>

如何解决这个问题? onClick 它根本不起作用我在构造函数中绑定(bind)了 handleEndOrder

最佳答案

因为你没有指定按钮的类型,默认是submit,你需要指定type="button"或者使用 e.preventDefault() 喜欢

<button class="btn btn-xs btn-danger pull-right" type="button" onClick={e => this.handleRemoveClick(material)}>x</button>

handleRemoveClick = (e, material) => {
e.preventDefault();
let idMaterial = material.material_id;
if(this.state.operation === 0){
this.setState( { previewShowAlertRemoveProduct : true })
}
this.setState( { operation : 1, material_id : idMaterial})
}
<button class="btn btn-xs btn-danger pull-right" onClick={e => this.handleRemoveClick(e, material)}>x</button>

关于javascript - 使用 React JS 的 HandleClick 不使用绑定(bind),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50063155/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com