reactjs - 当我使用上下文时,我应该在哪里以及如何使用重定向
问题描述
我想在用户正确登录时使用重定向。在上下文文件中我有(只有重要的东西):
const [infoLog, setInfoLog] = React.useState("");
const login = name => {
setInfoLog(name);
};
<LoginInfo.Provider
value={{
login: login,
logout: logout,
infolog: infoLog
}}
>
{children}
</LoginInfo.Provider>
export const LoginInfoConsumer = LoginInfo.Consumer;
在登录文件中我有(只有重要的东西):登录方法:
const login = () => {
if (tempLogin.login === "Login" && tempLogin.password == "Haslo") {
setLogged(addTempLogin.login);
}
返回:
<LoginPage>
{logged != "" && (
<div>
<LoginInfoConsumer>
<div>{({ login }) => <div>{login(logged)}</div>}</div>
</LoginInfoConsumer>
</div>
)}
我不知道应该在哪里插入 Redirect ,我在代码的最后一部分尝试过,但我无法正确执行此操作。
解决方案
我修复了我的问题。在 LoginInfoConsumer 外面<div>
破坏<Redirect>
我插入<Redirect>
的所有方式
const login = name => {
setInfoLog(name);
return <Redirect to="/page" />;
};
推荐阅读
- git - Any way to have git add a file from master into 10 other branches?
- php - Alamofire and PHP Upload Images
- internet-explorer - Internet Explorer 无法在 flex-box 内正确缩放 svg
- enaml - [Enaml][py36]:订阅运算符不会触发“可见”观察者
- python - Pickle breaking change in Python 3.7
- python - 无法在 django 中使用电子邮件登录
- python - 用beautifulsoup在表中搜索字符串并打印标题
- mongodb - 查询上限集合时出现 MongoDB 错误
- powershell - Azure DevOps - Setting and Using Variables in PowerShell Scripts
- javascript - HTML 按钮可能与 JavaScript 函数冲突?