Firebase 身份验证 - 登录问题
Posted
技术标签:
【中文标题】Firebase 身份验证 - 登录问题【英文标题】:Firebase Authentication - SignIn issue 【发布时间】:2020-12-22 15:21:34 【问题描述】:我得到了登录表单 - SignIn.js
:
<form onSubmit=this.onSubmit>
<div className="form-group">
<label htmlFor="email">Email</label>
<input type="text" className="form-control" name="email" value=this.state.email onChange=this.onChange />
</div>
<div className="form-group">
<label htmlFor="password">Password</label>
<input type="password" className="form-control" name="password" value=this.state.password onChange=this.onChange />
</div>
<input type="submit" value="Login" className="btn btn-primary btn-block" />
</form>
...
export default firebaseConnect()(SignIn);
和 onSubmit,我想登录到 Firebase/Firestore
onSubmit = e =>
e.preventDefault();
const firebase = this.props;
const email, password = this.state;
firebase
.login(email, password)
.catch(err => alert('Invalid Login Credentials'));
;
当我尝试登录时出现此错误:
TypeError: firebase.auth is not a function
我也试过这个:
firebase.auth().signInWithEmailAndPassword(email, password);
但我遇到了同样的问题。
我的商店:
const rootReducer = combineReducers(
firebase: firebaseReducer,
firestore: firestoreReducer);
const initialState = ;
const store = createStore(
rootReducer,
initialState,
window.__REDUX_DEVTOOLS_EXTENSION__ && window.__REDUX_DEVTOOLS_EXTENSION__());
const rrfProps =
firebase,
config: ,
dispatch: store.dispatch,
createFirestoreInstance;
ReactDOM.render(
<Provider store=store>
<ReactReduxFirebaseProvider ...rrfProps>
<App />
</ReactReduxFirebaseProvider>
</Provider>,
document.getElementById("root")
);
firebaseConfig.js
const fc =
//data from Firebase (apiKey, authDomain...)
firebase.initializeApp(fc);
firebase.firestore();
export default firebase;
【问题讨论】:
您是如何将 Firebase 添加到您的项目中的? 是的,我可以从 firebase 读取数据 const app = firebase.initializeApp(appConfiguration); const auth = app.auth(); auth.signInWithEmailAndPassword(email, password).... 应该可以。我认为您指的是错误的身份验证可能是? 试过但没有帮助....如果您有使用 auth.signIn 的工作示例,请提供一些链接 你看过了吗:***.com/questions/48592656/… 【参考方案1】:基于firebase.auth is not a function,我在firebaseConfig.js
中做了如下操作
import firebase from "firebase";
import "firebase/firestore";
这也很有效:
import firebase from "firebase/app";
import "firebase/firestore";
import "firebase/auth";
【讨论】:
以上是关于Firebase 身份验证 - 登录问题的主要内容,如果未能解决你的问题,请参考以下文章
如何确定 Firebase 用户是不是使用 facebook 身份验证登录
如何确定 Firebase 用户是不是使用 facebook 身份验证登录