Middle+
Можем ли да променим пропсите в дъщерния компонент?
sobes.tech AI
Отговор от AI
В детски компонент не може директно да се променят пропсите, тъй като пропсите са входни данни, предавани от родителя към детето и се считат за неизменяеми вътре в детския компонент.
Ако трябва да промените данни, предадени чрез пропс, обикновено:
- Родителят трябва да предаде функция за обратно извикване в пропсите, която детският компонент ще извика, за да промени състоянието на родителя.
- Или да използвате локално състояние в детския компонент, ако данните не трябва да се синхронизират с родителя.
Пример в React:
function Parent() {
const [value, setValue] = React.useState(0);
return <Child value={value} onChange={setValue} />;
}
function Child({ value, onChange }) {
return <button onClick={() => onChange(value + 1)}>Увеличи</button>;
}
По този начин, детският компонент не променя пропсите директно, а инициира промяна чрез callback.