//这些是我使用的函数
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>