Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Oppiskele Viittausten Käsittely UseRef-Hookin Avulla | React-hookit ja Konteksti Tilanhallintaan
React-mestaruus

bookViittausten Käsittely UseRef-Hookin Avulla

useRef-hookin avulla voidaan luoda muuttuja, joka säilyttää viittauksen elementtiin, arvoon tai muuhun tietoon, joka ei vaikuta komponentin renderöintiin. Tämä on hyödyllistä esimerkiksi muuttuvien arvojen tallentamiseen, DOM-elementtien käsittelyyn tai arvojen säilyttämiseen komponentin renderöintien välillä.

Syntaksi:

useRef-hookin käyttämiseksi määritellään muuttuja (refVariable) ja sille annetaan useRef()-funktion palauttama arvo. Halutessa voidaan antaa alkuarvo (initialValue) parametrina tälle hookille.

const refVariable = useRef(initialValue);

Huomio

Nykyinen arvo voidaan lukea ja päivittää refVariable.current -ominaisuuden kautta. useRef-hookin etuna on, että arvoja voidaan muokata ilman, että komponentti renderöityy uudelleen.

Esimerkki:

Luodaan FormInput-komponentti, joka käyttää useRef-hookia luodakseen viitteen syötekenttään ja kohdistaa siihen, kun painiketta klikataan.

import React, { useRef } from "react";

const FormInput = () => {
  const inputRef = useRef();

  const handleClick = () => {
    inputRef.current.focus();
  };

  return (
    <div>
      <input type="text" ref={inputRef} />
      <button onClick={handleClick}>Focus Input</button>
    </div>
  );
};

Tässä esimerkissä useRef-hook luo viitteen nimeltä inputRef. Tämä viite liitetään ref-elementin input-attribuuttiin, jolloin pääsemme käsiksi input-elementtiin käyttämällä inputRef.current.

Rivikohtainen selitys:

  • Rivi 1: Tuodaan useRef-hook React-kirjastosta sen toiminnallisuuden hyödyntämiseksi;
  • Rivi 3: FormInput-komponentti määritellään tavanomaisella funktiosyntaksilla;
  • Rivi 4: Alustetaan inputRef-muuttuja käyttämällä useRef-hookia, joka edustaa syötekentän viitettä;
  • Rivillä 6-8: Tämä JavaScript-nuolifunktio käsittelee painikkeen klikkauslogiikan, joka kohdistaa käyttäjän kursorin syötekenttään;
  • Rivillä 10-15: Komponentin merkkaus renderöidään.
    1. Rivillä 12 asetetaan viite käyttämällä ref-attribuuttia ja annetaan inputRef-muuttuja sen arvoksi;
    2. Painike rivillä 13 käyttää onClick-attribuuttia määrittääkseen suoritettavan funktion klikkauksen yhteydessä, tässä tapauksessa handleClick-funktion.

Koko sovelluksen koodi:

1. Mikä on useRef-hookin ensisijainen tarkoitus?

2. Mikä seuraavista kuvaa parhaiten useRef-muuttujan käyttäytymistä, kun sen arvoa päivitetään?

question mark

Mikä on useRef-hookin ensisijainen tarkoitus?

Select the correct answer

question mark

Mikä seuraavista kuvaa parhaiten useRef-muuttujan käyttäytymistä, kun sen arvoa päivitetään?

Select the correct answer

Oliko kaikki selvää?

Miten voimme parantaa sitä?

Kiitos palautteestasi!

Osio 3. Luku 4

Kysy tekoälyä

expand

Kysy tekoälyä

ChatGPT

Kysy mitä tahansa tai kokeile jotakin ehdotetuista kysymyksistä aloittaaksesi keskustelumme

Suggested prompts:

Can you explain more use cases for useRef besides focusing an input?

How does useRef differ from useState in React?

Can you show how to use useRef to store a mutable value that isn't a DOM element?

Awesome!

Completion rate improved to 2.17

bookViittausten Käsittely UseRef-Hookin Avulla

Pyyhkäise näyttääksesi valikon

useRef-hookin avulla voidaan luoda muuttuja, joka säilyttää viittauksen elementtiin, arvoon tai muuhun tietoon, joka ei vaikuta komponentin renderöintiin. Tämä on hyödyllistä esimerkiksi muuttuvien arvojen tallentamiseen, DOM-elementtien käsittelyyn tai arvojen säilyttämiseen komponentin renderöintien välillä.

Syntaksi:

useRef-hookin käyttämiseksi määritellään muuttuja (refVariable) ja sille annetaan useRef()-funktion palauttama arvo. Halutessa voidaan antaa alkuarvo (initialValue) parametrina tälle hookille.

const refVariable = useRef(initialValue);

Huomio

Nykyinen arvo voidaan lukea ja päivittää refVariable.current -ominaisuuden kautta. useRef-hookin etuna on, että arvoja voidaan muokata ilman, että komponentti renderöityy uudelleen.

Esimerkki:

Luodaan FormInput-komponentti, joka käyttää useRef-hookia luodakseen viitteen syötekenttään ja kohdistaa siihen, kun painiketta klikataan.

import React, { useRef } from "react";

const FormInput = () => {
  const inputRef = useRef();

  const handleClick = () => {
    inputRef.current.focus();
  };

  return (
    <div>
      <input type="text" ref={inputRef} />
      <button onClick={handleClick}>Focus Input</button>
    </div>
  );
};

Tässä esimerkissä useRef-hook luo viitteen nimeltä inputRef. Tämä viite liitetään ref-elementin input-attribuuttiin, jolloin pääsemme käsiksi input-elementtiin käyttämällä inputRef.current.

Rivikohtainen selitys:

  • Rivi 1: Tuodaan useRef-hook React-kirjastosta sen toiminnallisuuden hyödyntämiseksi;
  • Rivi 3: FormInput-komponentti määritellään tavanomaisella funktiosyntaksilla;
  • Rivi 4: Alustetaan inputRef-muuttuja käyttämällä useRef-hookia, joka edustaa syötekentän viitettä;
  • Rivillä 6-8: Tämä JavaScript-nuolifunktio käsittelee painikkeen klikkauslogiikan, joka kohdistaa käyttäjän kursorin syötekenttään;
  • Rivillä 10-15: Komponentin merkkaus renderöidään.
    1. Rivillä 12 asetetaan viite käyttämällä ref-attribuuttia ja annetaan inputRef-muuttuja sen arvoksi;
    2. Painike rivillä 13 käyttää onClick-attribuuttia määrittääkseen suoritettavan funktion klikkauksen yhteydessä, tässä tapauksessa handleClick-funktion.

Koko sovelluksen koodi:

1. Mikä on useRef-hookin ensisijainen tarkoitus?

2. Mikä seuraavista kuvaa parhaiten useRef-muuttujan käyttäytymistä, kun sen arvoa päivitetään?

question mark

Mikä on useRef-hookin ensisijainen tarkoitus?

Select the correct answer

question mark

Mikä seuraavista kuvaa parhaiten useRef-muuttujan käyttäytymistä, kun sen arvoa päivitetään?

Select the correct answer

Oliko kaikki selvää?

Miten voimme parantaa sitä?

Kiitos palautteestasi!

Osio 3. Luku 4
some-alt