在我的React JS应用程序中,我的onClick函数发生在Load上,而不是当我点击按钮时.正在尝试对JSON数组进



//这些是我使用的函数

function payLeast(a,b) {
return parseInt(a.pay, 10) - parseInt(b.pay, 10);
}
function sort(x){
testData.sort(x)
}

这是应用程序功能

class App extends Component{
render(){
return(
<html>    
<div className = "mainContainer">
<div className = "formContainer">
<form >
<div className = "searchContainer" align = "left">
<Dropdown title = "Click to see Searches" items = {items} multiSelect />
<input type="submit" value="Submit"></input>
</div>
<div className = "criteriaContainer">
<button type = "button" onClick={sort(payLeast)}>Pay</button>
<br></br>
<br></br>
<button>dateAdded</button>
</div>
<div className = "JSONContainer" >
<Query title = "Enter JSON Job Query Below"/>
</div>
<br></br>
</form>

更改

<button type = "button" onClick={sort(payLeast)}>Pay</button>

<button type = "button" onClick={() => sort(payLeast)}>Pay</button>

之所以会发生这种情况,是因为您在render语句期间调用sort(payLeast)

相反,定义一个这样的内联函数。

<button type = "button" onClick={() => sort(payLeast)}>Pay</button>

最新更新