#概要
ReactのuseReducerについて勉強しています。useStateに比べてuseReducerを利用するメリットがわかりません。
stateの内容が単純な文字や数値ではなく、オブジェクトが入っている場合にはuseReducerが良いと薄っすら記憶しているのですが、useStateでも出来そうだと思います。
#コード
useStateの場合
const [val, setVal] = React.useState({ login: false,username: '' }) const updateHandler = e => { setVal({ ...value, [e.target.name]: e.target.value }); };
useReducerの場合
const reducer = (state,action) =>{ switch(action.type) { case 'change': return { ...state, ...action.payload }; case "reset-color": return {login: false,username: ''}; default: return state; } } const [state, dispatch] = React.useReducer(reducer, { login: false,username: '' }); const updateHandler = e =>{ dispatch({ type: 'change', payload:{ login: true ,username: e.target.value } }) }
#質問
Reduxを使わない為、あまりreducerのありがたさがわかりません。
- useReducerを使いべきケースや、特別なメリットはありますか?
- useContextと一緒に使いたいと思います。useContextで利用する場合、useReducerの方が良い場合はありますか?
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/07/29 00:52