useLocation
接受用于确定state
属性类型的通用参数,因此:
const location = useLocation<YourStateTypeHere>();
例如:
interface LocationState {
newTransactions?: boolean;
}
// ...
const location = useLocation<LocationState>();
// ...
useDidMount(() => {
if (location.state?.newTransactions) {
scroll.scrollToBottom();
}
});
我如何到达那里的(因为我以前从未使用过),以防万一它有用:我知道大多数钩子的TypeScript绑定至少实现了一个通用参数,所以当我看到React Router location
包含了程序员定义的状态时,我认为它可能接受了。因此,我打开了一个使用React Router和TypeScript的项目,并将鼠标悬停useLocation
在代码中。果然,弹出窗口显示了一个通用参数,该参数已应用于该state
属性。结果!
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句