Mens props brukes til å sende data inn i en komponent, brukes state for å lagre og endre data inne i komponenten. Dette er nyttig når du vil lage interaktive komponenter som for eksempel teller, viser/skjuler noe, eller reagerer på brukerens input.
State er en "lokal tilstand" i komponenten – altså data som React husker, og som kan endres. Når state endres, vil komponenten rendres på nytt (oppdateres automatisk i nettleseren).
For å bruke state trenger du en React-hook som heter useState. Dette importeres fra React:
useState
import { useState } from 'react';
// Teller.jsx import { useState } from 'react'; function Teller() { const [antall, setAntall] = useState(0); return ( <div> <p>Du har trykket {antall} ganger</p> <button onClick={() => setAntall(antall + 1)}>Trykk meg</button> </div> ); } export default Teller;
const [antall, setAntall] = useState(0);
useState(0)
0
antall
setAntall
Knappen har en event handler:
onClick={() => setAntall(antall + 1)}
Dette betyr: Når knappen trykkes, øk antall med 1.
Lag en fil Teller.jsx i components-mappa og legg inn koden over. Deretter importer den i App.jsx:
Teller.jsx
components
App.jsx
import Teller from './components/Teller'; function App() { return ( <div> <Teller /> </div> ); }
Disse krever ofte at man holder på en tilstand som endres når noe skjer – da bruker man useState.
Kom i gang med React og Vite Komponenter i React Props – sende data til komponenter State –...
© 2024 • Contents under CC-BY-NC • Maintained by Karl Arne Dalsaune