Reagovat Hooks
Háky byly přidány do Reactu ve verzi 16.8.
Háčky umožňují funkčním komponentům přístup ke stavu a dalším funkcím React. Z tohoto důvodu již nejsou komponenty třídy obecně potřeba.
Ačkoli Hooks obecně nahrazují komponenty tříd, neexistují žádné plány na odstranění tříd z Reactu.
Co je to háček?
Háky nám umožňují „zaháknout“ do funkcí Reactu, jako jsou metody stavu a životního cyklu.
Příklad:
Zde je příklad Hooka. Nedělejte si starosti, pokud to nedává smysl. Podrobněji se budeme věnovat v další části .
import React, { useState } from "react";
import ReactDOM from "react-dom";
function FavoriteColor() {
const [color, setColor] = useState("red");
return (
<>
<h1>My favorite color is {color}!</h1>
<button
type="button"
onClick={() => setColor("blue")}
>Blue</button>
<button
type="button"
onClick={() => setColor("red")}
>Red</button>
<button
type="button"
onClick={() => setColor("pink")}
>Pink</button>
<button
type="button"
onClick={() => setColor("green")}
>Green</button>
</>
);
}
ReactDOM.render(<FavoriteColor />, document.getElementById('root'));
Musíte import
Háčky z react
.
Zde používáme useState
Hook ke sledování stavu aplikace.
Stav obecně odkazuje na aplikační data nebo vlastnosti, které je třeba sledovat.
Pravidla háku
Pro háčky platí 3 pravidla:
- Háky lze volat pouze uvnitř komponent funkce React.
- Háky lze volat pouze na nejvyšší úrovni komponenty.
- Háčky nemohou být podmíněné
Poznámka: Háčky nebudou fungovat v komponentách třídy React.
Vlastní háčky
Pokud máte stavovou logiku, kterou je třeba znovu použít v několika komponentách, můžete si sestavit své vlastní háky.
Podrobněji se budeme věnovat v sekci Vlastní háčky .