Taller de React
16-component-injection

Composición

Podemos obtener componentes de props, imports y variables:

function Panel({ Icon, children, elements }) {
	return (
		<Layout>
			<Icon />
			{children}
			{elements.map(({ Element }) => (
				<Element />
			))}
		</Layout>
	);
}

También podemos usar composición en componentes 🤯

function useDocumentTitle(defaultTitle) {
	const [title, setTitle] = useState(defaultTitle);
	useEffect(() => (document.title = title), [title]);
	return [title, setTitle];
}