on/offを切り替えるswitchがあり、切り替えるときにchangeState関数が呼ばれます。
引数として渡されるkeyの中身は{numberState: true}の形で渡されます。
setStateで渡されたstateの値を変えたいのですがうまくいきません。
わかる人がいましたら教えて欲しいです。よろしくお願いします。
interface IState { numbers: boolean; symbol: boolean; texxt: boolean; } const index:FC = () => { const [state, setState] = useState<IState>(); const changeState = (key: IState) => { console.log(key) setState({ ...state, ...{ key: !key }}); }; <Switch checked={numberState} onChange={(e) => changeState({ numbers: e.target.checked })} /> <Switch checked={textState} onChange={(e) => changeState({ text: e.target.checked })} /> <Switch checked={symbolState} onChange={(e) => changeState({ symbol: e.target.checked })} />