Closed ytanaka44 closed 8 months ago
enableReinitialize: true
を設定(参考)const { id } = useParams<string>();
useEffect(() => {
if (id) {
setIsLoading(true);
setError(null);
const fetchTodo = async () => {
try {
const fetchedTodo = await getTodoById(id);
setTodo(fetchedTodo);
} catch (err: any) {
setError(err.message);
} finally {
setIsLoading(false);
}
};
fetchTodo();
}
}, [id]);
背景
下図のようにタスクをクリックするとURL付きのダイアログが表示される。![image](https://github.com/ytanaka44/react-todoapp/assets/116620456/f328b2c7-7fa7-415b-9058-79c000580249)
このURLを直接検索すると下記エラーが発生
原因
TodoEditコンポーネントで下記のようにTodoStateを無理やり当てはめているため、undefinedの可能性を考慮できていない