[英]After authentication from the firebase i want to store Name, Email in state
我正在使用ReactInWithPopup方法成功验证了在Reactjs和Firebase中的全栈应用程序,之后我希望将凭据存储到本地状态。
我在ComponentDidMount中使用了this.setState,但出现了错误。 我什至使用axios,但失败了。
state = {
}
componentWillMount() {
auth.onAuthStateChanged(function (user) {
if (user) {
// User is signed in.
var displayName = user.displayName;
console.log(displayName);
var email = user.email;
console.log(email);
var emailVerified = user.emailVerified;
console.log(emailVerified);
var photoURL = user.photoURL;
var isAnonymous = user.isAnonymous;
var uid = user.uid;
var providerData = user.providerData;
this.setState({
displayName:this.displayName
})
} else {
window.location = "/signin";
}
})
}
TypeError:this.setState不是一个函数
使用auth.onAuthStateChanged((user) => {
(箭头功能)。 this
内部箭头功能与普通功能不同。
也不要使用componentWillMount
改用componentDidMount
的火力认证。 阅读此答案。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.