javascript - 执行路由更改功能(使用 HookRouter )
问题描述
我希望 Hookrouter 在路由更改时执行调度(来自减速器)功能。不知怎的,我正朝着错误的方向前进,你能帮帮我吗?如果我在 render 中调用 useRoutes 的结果,它就会开始循环......
import { LeftMenu } from './components/LeftMenu';
import { RightMenu } from './components/RightMenu';
import {A, useRoutes} from 'hookrouter';
import nftReducer from "./reducer/nftReducer"
import { useReducer } from 'react';
function App() {
const initState ={
loading : false,
nft : "",
id : ""
}
const [state, dispatch] = useReducer(nftReducer,initState);
const routes = {
'/': () => <LeftMenu />,
'/Polkamon': () => () => { dispatch({type:"CHANGENFT", nft:"Polkamon" }) },
'/Chubbies': () => <LeftMenu />,
};
const routeResult = useRoutes(routes);
return (
<div className="Container">
<LeftMenu />
<RightMenu />
{ "HERE " + state.nft }
<A href="Polkamon">POLKAMON</A>
</div>
);
}
export default App;
解决方案
推荐阅读
- c# - 浮动变量没有保存到 playerprefs 我如何修复这个 Unity?
- facebook - 使用 Facebook Messenger 的体验
- android - 为什么我的编译器要求我在这里为 Map.forEach() 编写扩展函数?
- mongodb - mongodb 日志消息“ctx”:“WTCheckpointThread”
- java - 关于Android Studio中NullPointerException错误的问题
- c# - Discord bot 防止多个命令实例
- html - 如何使此页面响应?
- javascript - 网页中链接样式表的麻烦,与目录相关的问题
- mysql - 是什么让这个查询如此缓慢?150,000 个受影响的行需要超过 1.5 秒
- php - 在 null symfony 5 上调用成员函数 getId() 但存储库中的其他方法正在工作