Я хочу сохранить новый узел или пользователей объекта в базе данных firebase, но это дает мне ошибку: первый аргумент содержит неопределенное значение.
Я не могу исправить эту ошибку. Кто-нибудь может сказать мне, где я иду не так?
class Authen extends Component {
login(event) {
const email = this.refs.email.value;
const password = this.refs.password.value;
console.log(email,password);
const auth = firebase.auth();
const promise = auth.signInWithEmailAndPassword(email, password);
promise.catch((e) => {
var err = e.message;
console.log("The error is ",err);
this.setState({err: err});
});
}
signup(event) {
const email = this.refs.email.value;
const password = this.refs.password.value;
console.log(email,password);
const auth = firebase.auth();
const promise = auth.createUserWithEmailAndPassword(email,password);
promise
.then(user => {
var err = "Welcome "+user.email;
firebase.database().ref('users/'+user.uid).set({
email: user.email
});
console.log("The user is ",user);
this.setState({err: err});
});
promise
.catch(e => {
var err = e.message;
console.log(err);
this.setState({err: err});
});
}
constructor(props){
super(props);
this.state = {
err: ''
};
this.login = this.login.bind(this);
this.signup = this.signup.bind(this);
}
render() {
return (
<div>
<input id="email" ref="email" type="email" placeholder="Enter your email" /><br />
<input id="pass" ref="password" type="password" placeholder="Enter your password" /><br />
<p>{this.state.err}</p>
<button onClick={this.login}>Log In</button>
<button onClick={this.signup}>Sign Up</button>
</div>
);
}
}
export default Authen;