我有一个URL,其中包含一些参数,例如myURL?pageNo={pNo}&search1={campus}&search2={s2}
。 search
和search2
是两个下拉框。如何更新search1
中的search2
和handleChange()
值?
import React, { Component } from 'react';
import { render } from 'react-dom';
import axios from 'axios';
//import Course from './components/Course.js';
const API_URL='myURL';
class App extends Component {
state = {
query: '',
campus:'',
results: [],
TotalRecordCount:0,
currentPage:1
}
//URL with parameters
getInfo = () => {
let query='pageNo=${currentPage}&campus=${campus}';
axios.get(`${API_URL}?${this.state.query}`)
.then(response => {
// console.log(response);
this.setState({
results: response.data,
});
});
}
//event handler
handleChange(event){
this.setState({
campus: event.target.value}, <!--?? how to replace campus value in query?
() => {
this.getInfo()
}
)
}
//渲染
render() {
const results=this.state.results;
return (
<div className="App">
<form>
<div className="campusFilter">
<select name="campus" onChange={this.handleChange.bind(this)}>
<option value="">Select a Campus</option>
<option>Campus A</option>
<option>Campus B</option>
</select>
</div>
<p>{this.state.query}</p>
<!--display results here-->
</form>
</div>
)
}
}
export default App;
谢谢。