Para conectar o login, faremos a mesma coisa que fizemos lá com o registro começando pelos fields
const [fields, setFields] = useState({
email: "",
password: "",
});
Agora iremos conectar com os inputs o que nós temos aqui
<InputContainer>
<Input
placeholder="Email"
value={fields.email}
onChangeText={(val) => {
setFields({
...fields,
email: val,
});
}}
placeholderTextColor="white"
/>
</InputContainer>
<InputContainer>
<Input
placeholder="Senha"
value={fields.password}
onChangeText={(val) => {
setFields({
...fields,
password: val,
});
}}
placeholderTextColor="white"
secureTextEntry={true}
/>
</InputContainer>
Agora nós que temos isso podemos criar o nosso handle
const { login } = useAuth();
const handleLogin = () => {
login(fields.email, fields.password);
};
Agora basta testarmos, pois está tudo configurado, porém antes, vamos na home para fazer o check no token
const Home = () => {
const { token } = useAuth();
console.log(token);
Podemos visualizar que ele está como null, e aí quando fizermos o login a gente vai ser redirecionado para cá e ver esse token novamente, preenchido dessa vez
Agora ao fazer login (podemos testar também com email ou senha errado para ver o erro) e vamos ver que quando logarmos, a gente vai ter sucesso. Agora, nós iremos fazer a sessão de logout, lá dentro de userProfile
const { logout } = useAuth();
<LogOutButton
onPress={() => {
logout();
}}
>
<LogOutText>Sair da sua conta</LogOutText>
</LogOutButton>
Ao clicarmos em logout somos enviados para home e podemos ver novamente o null aqui no token, e aí está tudo zerado novamente. Eu recomendo também que você crie uma nova conta para testar o login automático com a criação.