我正在学习React Hooks,我需要在用户访问的第一页上设置一个状态,并且该状态必须持久。
现在我是这样的:
$(document).ready(function(){
$('input[type="radio"]').click(function(){
var demovalue = $(this).val();
$("div.hide_div").hide();
$("#show_"+demovalue).show();
});
$('input[type="radio"]').is(":checked") {
var demovalue = $(this).val();
$("#show_"+demovalue).show();
});
});
这是在我的const Routes = () => {
const [state, dispatch] = useContext(StoreContext);
useEffect(async () => {
const rates = await updateRates();
dispatch({ type: "UPDATE_RATE", payload: rates });
}, []);
return (
<BrowserRouter>
<Route path="/" component={favicon} />
<Route path="/" component={navbar} />
<Switch>
<Route exact path="/" component={Main} />
<Route path="/signin" component={SignIn} />
<Route path="/signup" component={SignUp} />
<PrivateRoute path="/app" component={() => <h1>App</h1>} />
<Route path="*" component={() => <h1>Page not found</h1>} />
</Switch>
</BrowserRouter>
);
};
文件中。但是,这会使状态每隔用户访问一次就更新一次。例如,如果用户访问routes.js
,然后访问Main
,则在渲染SignIn
时更新状态,然后在渲染Main
时再次更新状态。
我试图放入SignIn
文件,但是没有用。
谢谢!