Skip to content

Instantly share code, notes, and snippets.

@vanaf1979
Created June 16, 2020 19:54
Show Gist options
  • Save vanaf1979/09773a670af1b38704a139fae4c5236b to your computer and use it in GitHub Desktop.
Save vanaf1979/09773a670af1b38704a139fae4c5236b to your computer and use it in GitHub Desktop.
import React, {useState, useEffect} from "react";
import axios from "axios";
const ComponentWithRequest = props => {
const [apiData, setApiData] = useState(null);
useEffect(() => {
const source = axios.CancelToken.source();
axios.get("https://jsonplaceholder.typicode.com/todos", {
cancelToken: source.token
}).then(response => {
setApiData(response.data);
}).catch(err => {
console.log("Catched error: " + e.message);
});
props.toggleMounted();
return () => {
source.cancel("Component got unmounted");
};
}, [props]);
return (
<div className="box">
<p>I will immediately get unmounted.</p>
</div>
);
};
export default ComponentWithRequest;
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment