Práce s radio v Reactu

Práce s radio radio se poněkud liší, například, od stejných checkboxů. Problém je v tom, že několik radio bude mít stejný state, ale různé value.

Proto práce probíhá následujícím způsobem: každé radioknožce v atribut value se zapíše její vlastní hodnota, a v atribut checked - speciální podmínka, která kontroluje, zda je state roven určité hodnotě. Pokud je roven - radioknožka se stane zaškrtnutou, a pokud není roven - bude nezaškrtnutá.

Zde je implementace popsaného:

jsxfunction App() {
  const [value, setValue] = useState(1);
  
  function changeHandler(event) {
    setValue(event.target.value);
  }
  
  return <div>
    <input
      type="radio"
      name="radio"
      value="1"
      checked={value === '1' ? true : false}
      onChange={changeHandler}
    />
    <input
      type="radio"
      name="radio"
      value="2"
      checked={value === '2' ? true : false}
      onChange={changeHandler}
    />
    <input
      type="radio"
      name="radio"
      value="3"
      checked={value === '3' ? true : false}
      onChange={changeHandler}
    />
  </div>
}
Задание 1

Jsou dány 3 radioknožky. Je dán odstavec. Udělejte tak, aby hodnota vybrané radioknožky byla vypsána v tomto odstavci.

Задание 2

Pomocí radioknožek se zeptejte uživatele na jeho oblíbený programovací jazyk. Vypište jeho volbu v odstavci. Pokud je zvolen jazyk JavaScript, pochvalte uživatele.