Custom Hooks - andrewkyllo-401-advanced-javascript/seattle-javascript-401d34 GitHub Wiki
- Extract duplicated logic from components
- Share common functionality
- Take advantage of useEffect lifecycle
- Handle forms easily
- Pre-fetch API data
- Connect to services Example:
export default function useFoodHook(hungry) {
let food = 'cookies';
return hungry ? food : null;
}
import useFeedme from 'use-food-hook.js';
function myComponent() {
const food = useFeedMe(true);
return <div>{food}</div>
}