收到错误"电子邮件地址格式错误。"尝试使用带有firebase的Vue.js创建登录页面时。
这是我的代码:
<template>
<div class = "sign-up">
<p> Let's create a new account</p>
<input type="email" v-model="email" placeholder="Email"> <br>
<input type="password" v-model="password" placeholder="Password"> <br>
<button v-on:click="signUp">Sign Up</button>
<br>
</div>
</template>
<script>
import firebase from 'firebase'
export default {
name:'Signup',
data: function() {
return {
email: '',
password: '',
}
},
methods: {
signUp: function() {
firebase.auth().createUserWithEmailAndPassword(this.email, this.password).then(
function (user) {
alert('Your account has been created')
},
function(error) {
var errorCode = error.code;
var errorMessage = error.message;
if (errorCode == 'auth/weak-password') {
alert('The password is too weak.');
} else {
alert(errorMessage);
}
console.log(error);
});
}
}
}
</script>
我确实已确保在firebase控制台上启用了身份验证部分。
不知道为什么还会收到此错误
请帮助
答案 0 :(得分:1)
感谢上帝,我解决了它。
通过添加
解决了这个问题 firebase.initializeApp(config);
之后
import firebase from 'firebase'
因为我已经在其他文件中初始化了Firebase
问题可能是由异步加载javascript引起的。
答案 1 :(得分:1)
这很好。我累了要解决你的问题。我带来了官方的firebase auth示例。未定义您的用户,在导入时,您必须使用{}来防止.auth()错误。
<template>
<div class = "sign-up">
<p> Let's create a new account</p>
<input type="email" v-model="email" placeholder="Email">
<input type="password" v-model="password" placeholder="Password">
<button v-on:click="signUp">Sign Up</button>
</div>
</template>
<script>
import {fb} from '../firebase';
export default {
name:'Signup',
data() {
return {
email: "",
password: "",
}
},
methods: {
signUp: function() {
fb.auth().createUserWithEmailAndPassword(this.email, this.password)
.catch(function(error) {
// Handle Errors here.
var errorCode = error.code;
var errorMessage = error.message;
if (errorCode == 'auth/weak-password') {
alert('The password is too weak.');
} else {
alert(errorMessage);
}
console.log(error);
});
}
}
}
</script>