javascript - 如何使用 auth().createUserWithEmailAndPassword 接收用户名和国家/地区
问题描述
美好的一天开发者。请我是新来的反应本机的,我想将firebase auth用于一个项目。但我不知道如何使用普通的 auth().createUserWithEmailAndPassword 方法接受用户名和国家/地区。到目前为止,以下是我的代码..但它确实工作正常。
import React, {createContext, useState} from 'react';
import { StyleSheet, ActivityIndicator, View, Text, Alert } from 'react-native'
import auth from '@react-native-firebase/auth';
import firebase from '@react-native-firebase/app';
export const AuthContext = createContext();
export const AuthProvider = ({children}) => {
const [user, setUser] = useState(null);
return (
<AuthContext.Provider
value={{
user,
setUser,
login: async (email, password) => {
try {
await auth().signInWithEmailAndPassword(email, password);
} catch (e) {
console.log(e);
Alert.alert(
e.message);
}
},
register: async (name, email, password) => {
try {
await auth().createUserWithEmailAndPassword(email, password);
firebase.auth().currentUser.updateProfile({
displayName: name
});
Alert.alert("Success ✅", "Account created successfully")
return {};
}
catch (e) {
Alert.alert(
e.message );
}
},
forgot: async (email) => {
try {
await firebase.auth().sendPasswordResetEmail(email);
Alert.alert("Success ✅", "A Password Recorvery Link has been sent to your mail.")
}
catch (e) {
Alert.alert(
e.message );
}
},
logout: async () => {
try {
await auth().signOut();
} catch (e) {
Alert.alert(
e.message );
}
},
sendver: async () => {
try {
await firebase.auth().currentUser.sendEmailVerification();
} catch (e) {
Alert.alert(
e.message );
}
},
}}>
{children}
</AuthContext.Provider>
);
};
如果有人可以提供帮助,我会非常感激。非常感谢。
解决方案
试试这个方法
firebase.auth().signInWithEmailAndPassword("abc@gmail.com", "******")
.then(function(user) {
// Success
})
.catch(function(error) {
// Error Handling
});
注意:将成功的用户信息保存在数据库中
推荐阅读
- java - 为什么 AspectJ 会生成一个空的 Annotation 检查?
- java - 在 libgdx 中绘制 3d 场景背后的舞台
- java - buildConfigField 无法从 gradle.properties 恢复我的 api 密钥
- ios - 使用 AVFoundation 显示来自 AVVideoCapture 会话的异步静止图像输出
- r - R中的函数组合:从闭包中扩展示例
- machine-learning - 用于神经网络的激活函数
- python - Python 中的测验 - 原始程序已运行,但已重构且现在无法运行
- node.js - 使用 Multer 上传多个图像时如何获取 req.files.path
- javascript - 无法获取 a 的 HTML 值
- vue.js - 如何在 vuejs 中的 axios 上自动刷新计算属性