Reactjs 成功登录时的Firebaseui web回调isn';我没打电话
我在React(15.3.1)项目中使用(v2),但是它成功的登录回调不起作用。我知道测试用户正在正确登录,因为在Firebase控制台中,我看到一个新用户添加了当前日期/时间的“已登录”属性。以下是相关代码:Reactjs 成功登录时的Firebaseui web回调isn';我没打电话,reactjs,firebase-authentication,firebaseui,Reactjs,Firebase Authentication,Firebaseui,我在React(15.3.1)项目中使用(v2),但是它成功的登录回调不起作用。我知道测试用户正在正确登录,因为在Firebase控制台中,我看到一个新用户添加了当前日期/时间的“已登录”属性。以下是相关代码: class App extends React.Component { constructor(props) { super(props); this.state = { items: {}, modalIsOpen: false,
class App extends React.Component {
constructor(props) {
super(props);
this.state = {
items: {},
modalIsOpen: false,
loggedIn: false,
currentUser: null
};
this.ui = new firebaseui.auth.AuthUI(firebase.auth());
this.uiConfig = {
'signInSuccessUrl': 'http://localhost:3333',
'signInOptions': [
firebase.auth.GoogleAuthProvider.PROVIDER_ID,
firebase.auth.FacebookAuthProvider.PROVIDER_ID,
firebase.auth.TwitterAuthProvider.PROVIDER_ID,
firebase.auth.GithubAuthProvider.PROVIDER_ID,
firebase.auth.EmailAuthProvider.PROVIDER_ID
],
'signInFlow': 'popup',
callbacks: {
signInSuccess: function(currentUser, credential, redirectUrl) {
alert("Signed in as "+currentUser + " with credential " + credential);
this.setState({"modalIsOpen": false});
}.bind(this)
}
};
我已经在signinsucess函数中设置了断点,但它们从未跳闸。我也没有控制台错误
编辑:恢复到v1.0.0修复了我的问题(代码相同),因此这是v2.0.0的问题。我阅读了他们页面上的文档,我没有看到他们的实现与我的有任何区别,所以我不明白为什么切换到v2会破坏上面的代码,但它显然是这样做的。在
componentDidMount
中尝试firebase代码,而不是constructor
。@TharakaWijebandara尝试过,没有改变任何东西,同样的结果。你在某处调用这个.ui.start()
方法吗?是的,我在react模式窗口中有登录按钮。当它打开时,它调用'afterOpenModal=()=>{this.ui.start('#firebaseui auth container',this.uiConfig)}`。我假设这是可行的,因为我获得了登录按钮,可以单击其中任何一个按钮,并看到用户出现在firebase用户控制台中。您是否尝试了其他回调uiShown()
?在componentDidMount
中尝试firebase代码,而不是constructor
。@TharakaWijebandara尝试过,没有改变任何内容,同样的结果。你在某处调用这个.ui.start()
方法吗?是的,我在react模式窗口中有登录按钮。当它打开时,它调用'afterOpenModal=()=>{this.ui.start('#firebaseui auth container',this.uiConfig)}`。我假设这是可行的,因为我获得了登录按钮,可以单击其中任何一个按钮,并看到用户出现在firebase用户控制台中。您是否尝试了其他回调uiShown()
?