亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

ReactJS -> 為什么我的狀態在第一次嘗試時返回未定義?

ReactJS -> 為什么我的狀態在第一次嘗試時返回未定義?

婷婷同學_ 2024-01-18 16:26:00
我試圖將用戶的登錄狀態保存在一個狀態中,然后將其發送到 cookie。問題是,我第一次通過登錄表單登錄時,我將登錄狀態設置為“已登錄”,然后我控制臺記錄它,但它返回未定義,然后在第二次按登錄按鈕時(在我已經登錄之后)成功)它最終在控制臺中顯示“已登錄”。這是為什么?我如何解決它?這是相關代碼:    const [loginStatus, setLoginStatus]= useState()    //Here we have irrelevant code that validates the login info entered and then it calls authorizeUser    const authorizeUser=()=>{      setLoginStatus('logged in')      console.log(loginStatus)}
查看完整描述

1 回答

?
小怪獸愛吃肉

TA貢獻1852條經驗 獲得超1個贊

useEffect每次渲染后運行,因此即使您設置loginStatusin的值useEffect(),第一次渲染loginStatus也沒有任何值。您可以通過在調用中傳遞默認值來在第一次渲染之前useState()設置默認值,如下所示:

const [loginStatus, setLoginStatus] = useState('whatever you want here, even a null string')


查看完整回答
反對 回復 2024-01-18
  • 1 回答
  • 0 關注
  • 138 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號