Value-attribuute in keuses in React

Laat ons nou aanneem dat die option-tags value-attribuute het:

jsxfunction App() {
  return <div>
    <select>
      <option value="1">text1</option>
      <option value="2">text2</option>
      <option value="3">text3</option>
    </select>
  </div>;
}

In so 'n geval, as gevolg van die teenwoordigheid van die value-attribuute, sal die waardes daarvan in die staat beland, en nie die teks van die option-tags nie. Ons kan dit verifieer deur die keuse resultaat in 'n paragraaf te vertoon:

jsxfunction App() {
  const [value, setValue] = useState('');
  
  return <div>
    <select value={value} onChange={(event) => setValue(event.target.value)}>
      <option value="1">text1</option>
      <option value="2">text2</option>
      <option value="3">text3</option>
    </select>
    <p>
      u keuse: {value}
    </p>
  </div>;
}

Om die teks van die option en sy waarde te skei kan gerieflik wees: ons kan die teks van die tag verander soos ons wil, terwyl in ons skrip die keuse resultaat hanteer sal word volgens die waarde van die value-attribuut, wat onveranderd sal bly.

Kyk na die voorbeeld:

jsxfunction App() {
  const [value, setValue] = useState('');
  
  return <div>
    <select value={value} onChange={event => setValue(event.target.value)}>
      <option value="1">text1</option>
      <option value="2">text2</option>
      <option value="3">text3</option>
    </select>
    <p>
      {value === '1' && 'u het die eerste item gekies'}
      {value === '2' && 'u het die tweede item gekies'}
      {value === '3' && 'u het die derde item gekies'}
    </p>
  </div>;
}

Nou, as ons die tekste van die option-tags verander, sal die skrip se werking nie onderbreek word nie - want dit is gekoppel aan die waarde van die value-attribuut.

Задание 1

Bied met behulp van 'n keuselys vir die gebruiker aan om te kies tot watter ouderdomsgroep hy/sy behoort: van 0 tot 12 jaar, van 13 tot 17, van 18 tot 25, of ouer as 25 jaar.