React

by park kyungdoo

HTML

<script src="https://cdn.jsdelivr.net/npm/axios/dist/axios.min.js"></script>
<div id="app"></div>

React

class App extends React.Component {
  constructor(props) {
    super(props)
    
    this.cancelToken;
    this.changeInput = this.changeInput.bind(this);
  }
  
  async changeInput(e) {
  
  if (this.cancelToken) {
  this.cancelToken.cancel();
  }
  	this.cancelToken = axios.CancelToken.source();
    console.log(this.cancelToken)
		const res = await axios.get('https://httpbin.org/get', {
    cancelToken: this.cancelToken.token
    });
    console.log(res)
  }
  
  render() {
    return (
      <div>
        <input onChange={this.changeInput} />
      </div>
    )
  }
}

ReactDOM.render(<App />, document.querySelector("#app"))