我在我的React(15.3.1)项目中使用firebaseui-web(v2),但它的成功登录回调是不行的。我知道测试用户正在正确登录,因为在Firebase控制台中查看我看到一个新用户添加了一个'已登录'当前日期/时间的属性。这是相关的代码:
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)
}
};
我在signInSuccess函数中放置了断点,但它们从不跳闸。我也没有出现控制台错误。
编辑:恢复到v1.0.0修复了我的问题(使用相同的代码),因此它是v2.0.0的问题。我在他们的页面上阅读了文档,我没有看到他们的实现与我的任何不同,所以我不明白为什么切换到v2会打破上面的代码,但它似乎肯定是这样做的。