Molemmat pitävät sisällään tietoa, joka vaikuttaa siihen, mitä komponentti renderöi, mutta ne eroavat siinä, kuka omistaa tiedot ja voiko sitä muuttaa.
Molemmat pitävät sisällään tietoa, joka vaikuttaa siihen, mitä komponentti renderöi, mutta ne eroavat siinä, kuka omistaa tiedot ja voiko sitä muuttaa.
// `step` is a PROP — given by the parent, the child only reads it.
// `count` is STATE — owned here, changes on click, causes a re-render.
function Counter({ step }) {
const [count, setCount] = useState(0);
return (
<button onClick={() => setCount(count + step)}>
{count}
</button>
);
}
// Parent decides the step and passes it down:
<Counter step={5} />
Tiedot virtaavat alaspäin (isäntä → lapsi propsien kautta) ja muutokset virtaavat ylöspäin (lapsi pyytää isäntää muuttamaan jotakin callback-propsilla kuten onChange). Tämä yksisuuntainen virtaus tekee React-sovelluksista ennakoitavia.
props.x = 1) on virhe — React ei renderöi uudelleen ja olet rikkonut isännän omistajuutta. "Propsien muuttamiseksi" kutsu callback-funktiota, jonka isäntä antoi sinulle, jotta isäntä voi päivittää oman tilansa ja välittää uuden arvon alaspäin.Kirjasto IT-haastattelukysymyksiä yksityiskohtaisine vastauksineen — Juniorista Senioriin.
Lahjoita