Pytania kontrolne

2.1. Która z poniższych deklaracji jest deklaracją komponentu JSX (można go używać jak znacznika w definicjach JSX)?

1) const Hello = props => (<div>{props.text}</div>);
2) const HtmlElement = <div>Hello world!</div>;
3) const HtmlComponent = () => (HtmlElement);
4) const ReactElement = React.createElement('div', null, 'Hello World');
5) const ReactElementJsx = <Hello text="Hello world!!!" />;
6) const ReactComponentJsx = ()=> {return  <Hello text="Hello world!!!!" />};

2.2. Funkcje strzałkowe pozwalają uniknąć konieczności stosowania bind(this)?

tak/nie

2.3. Przepływ danych w aplikacji

  1. Własności (props) i stan (state) oraz inne dane rodzica mogą być przekazane do potomka.
  2. Komponent rodzica używa komponentu potomka poprzez JSX wstawiając przekazywane dane jako właściości
  3. Przodek może odczytywać stan potomka i w ten sposób informacja jest przekazywana w górę drzewa

2.4. Obsługa zdarzeń

  1. Może wiązać się z wywołaniem funkcji dostarczonej przez przodka (poprzez własność props)
  2. Może być dowolną funkcją JavaScript
  3. Musi to być funkcja mająca dostęp do danych komponentu (props, state)

2.5. Elementy React zapisane w postaci funkcyjnej (()=>....) stosujemy gdy nie potrzebujemy state?

  • Tak
  • Nie

2.6. ZapisKomponent = (props) => (<p>prostota</p>)

  1. To skrót definicji z funkcją render składającą się wyłącznie z instrukcji return ....
  2. Jest błędny

2.7. Zapis this.zdarzenie=this.zdarzenie.bind(this) w konstruktorze komponentu

  1. Dotyczy funkcji komponentu która odwołuje się do this
  2. Może być zastąpiony inną konstrukcją

2.8. Jeśli w użyciu komponentu definiujemy obsługę zdarzeń - np onClick={}, to w nawiasach klamrowych musimy podać funkcję a nie wyrażenie (na przykład wywołanie funkcji nazwa())

  • Tak
  • Nie

.