Я использую Auth.currentUser Info () для отображения данных профиля пользователя.Aws ampify отлично работает для регистрации, входа в систему.
Показывает имя пользователя только без других атрибутов. Также не выдает никаких ошибок.
Я пропустил здесь какие-либо коды или атрибуты.
Вот мой пример кода
export default class Tab4Main extends Component {
state = {
info: {}
}
async componentDidMount() {
const info = await Auth.currentUserInfo()
console.log('Returned info: ', info)
this.setState({ info })
}
signOut() {
Auth.signOut()
.then(user => {
console.log('successful sign out!')
})
.catch(err => Alert.alert('error signing out: ', err))
}
render() {
const { info } = this.state
const {username, gender,birthdate } = info
return (
<Container>
<Content>
<Text style={{paddingTop:50,color:"red"}}>Welcome,
{username}
{gender},
{birthdate}
</Text>
<Button rounded block style={{
backgroundColor:"#6e1e11",marginTop:40}} onPress=
{this.signOut.bind(this)} >
<Text style={{fontSize: 18,fontWeight: "bold",color:
"#ffffff"}}>Sign Out</Text>
</Button>
Я также добавляю код регистрации. Это работает просто отлично и сохраняет данные в пулы пользователей. И логин тоже работает нормально после подтверждения.
state = {
username:'',
name: '',
password: '',
gender:'',
birthdate:'',
confirmationCode: '',
}
onChangeText(key, value) {
this.setState({
[key]: value
})
}
signUp() {
Auth.signUp({
username: this.state.username,
password: this.state.password,
attributes: {
gender:this.state.gender,
birthdate:this.state.birthdate,
name:this.state.name
}
})
.then(() => this.ShowModalFunction(true) )
//console.log('successful sign up!'))
.catch(err => Alert.alert('error signing up!: ', err))
}