首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >ı如何处理防火墙身份验证问题?

ı如何处理防火墙身份验证问题?
EN

Stack Overflow用户
提问于 2022-02-12 20:09:18
回答 1查看 26关注 0票数 0

我正在尝试开发用户认证页面,在与防火墙的反应。我可以签到,但签到并不会改变到签到。有什么问题吗?

代码语言:javascript
复制
    const handleAuthentication = () => {
    if(user){
        auth.signOut();
    }
   }
代码语言:javascript
复制
  <div onClick={handleAuthentication} 
            className="header_option">
                <span 
                className="header_optionLineOne" >Hello, Guest</span>
                <span 
                className="header_optionLineTwo" >{user ? 
                'Sign Out': 'Sign In'}</span>
   </div>
EN

回答 1

Stack Overflow用户

发布于 2022-02-12 20:19:54

可能用户实际上已经被注销了,但是UI并不是重新命名,因为它不知道更改。

要解决这个问题,您需要将user存储在组件的状态,使用setStateuseState钩子:

代码语言:javascript
复制
const [user, setUser] = useState(null);

auth.onAuthStateChanged((user) => {
  setUser(user);
});

当用户是状态的一部分时,对setUser(user)的调用将导致组件重登,从而显示更新的(缺乏)用户信息。

还请参阅获取当前用户上Firebase文档中的第一个代码片段。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/71095482

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档