Sobes.tech
Middle

React үчүн ыңгайлаштырылган useSubState хукты ишке ашырыңыз, ал толук абалды, setState функциясын жана ачкыч атын (объекттин талаасын) кабыл алат жана ошол талаанын мааниси менен аны өзгөртүүчү функциядан турган tuple кайтарат — useState сыяктуу, бирок чоң абал объектинин конкреттүү талаасы үчүн.

sobes.tech AI

AIден жооп

jsx import { useCallback } from 'react';

function useSubState(state, setState, key) { const value = state[key];

const setValue = useCallback( (newValue) => { setState(prevState => ({ ...prevState, [key]: typeof newValue === 'function' ? newValue(prevState[key]) : newValue })); }, [key, setState] );

return [value, setValue]; }

// Использование: // const [subValue, setSubValue] = useSubState(state, setState, 'fieldName');