Definiowanie komponentu
git checkout 5-component -f
Obecnie mamy jeden komponent (App), ale jak obiecywałem komponenty mogą zawierać logikę w sobie i zapewniają nam reużywalność. Zdefiniujmy naszą obecną funkcjonalność (3 przyciski + licznik) jako osobny komponent i wyświetlmy go parę razy!
Zrobimy to etapami by się nie pogubić.
W tym samym pliku, podobnie jak jest zdefiniowana klasa App zdefiniujmy osobną klasę CounterButtons, która zwróci diva z napisem "tu będzie mój przycisk". Zwróć uwagę, że komponenty w React zawsze zaczynają się z wielkiej litery
class CounterButtons extends React.Component {
render() {
return <div>Tu będą moje przyciski</div>;
}
}
Następnie wyświetlmy tem komponent w App. Wyświetlamy go podobnie jak normalnego elementy w html, różnica polega na tym, że komponent React jest z wielkiej litery.
class App extends React.Component {
// reszta
render() {
return (
<div className="App">
// przyciski tutaj
<CounterButtons />
</div>
);
}
}
Mamy teraz osobny komponent w hierarchii. App jest rodzicem CounterButton. Może mieć kilka egzemplarzy tego samego komponentu i każdy z nich będzie miał osobny stan!