反应从location.state访问自定义状态字段

问题描述

我正在尝试在登录后实施重定向。但是,进入登录页面时会传递自定义路由,该路由会因按下哪个按钮等而异。

import { useLocation } from 'react-router-dom';

const Login: FC = (): JSX.Element => {
 const location = useLocation();
 const [claimUrl,setClaimUrl] = useState({});
 useEffect(() => {
        location.state && setClaimUrl(location.state.claimUrl);
    },[location]);
...
};

我遇到一个错误Property 'claimUrl' does not exist on type '{}'.

那么有什么办法可以在位置上定义它?

任何帮助/建议都很好。

解决方法

设法通过将字段添加到useLocation()来解决这个问题。

const location = useLocation<{
        claimUrl: unknown;
    }>();