[英]How does firebase's onAuthStateChanged work in ComponentDidMount lifecycle in reactJS
誰能解釋一下這個 onAuthStateChanged function 如何在 componentDidMount 中工作。 我知道這個生命周期鈎子只在組件安裝時執行一次。 那么里面的function是怎么執行的呢?
我假設它就像回調 function 繼續在事件循環中運行,因為當 state 像 JS 中的 addEventlistner 一樣更改時會被觸發。
componentDidMount() {
console.log("Context Mounted");
firebaseapp.auth().onAuthStateChanged((user) => {
if (user) {
this.setState({ currentUser: user });
console.log("User Signed IN ");
} else {
console.log("THERE IS NO USER");
}
});
}
你幾乎明白了它的要點:在你用 Firebase 注冊你的onAuthStateChanged
回調后,它將被調用:
由於您調用setState
將用戶放入 state,因此只要發生上述事件之一,就會觸發 UI 的重新呈現。
這一直持續到應用程序退出或直到您取消注冊偵聽器,您通常應該在同一組件的componentWillUnmount
方法中執行此操作。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.