UserHelper
O controle UserHelper, é usado para orquestrar os dados fornecidos pelo modelo Usuario.
Sintaxe
import { UserHelper } from "Helper";
UserHelper.getUser()
.then(console.log)
.catch(console.error);
// object Usuario {...}
Métodos
login
static login( email : string , senha : string) : Promise
Método responsável para efetuar login do usuário passando os parâmetros e-mail e senha e retornando uma Promise. Sendo que:
Callback then
Será acionado quando o login for realizado com sucesso, retornando um objeto modelo Usuario com os dados do usuário em questão.
Callback catch
Será acionado caso o login for interrompido por um erro, retornando um objeto modelo Resultado com as informações de um erro específico.
Exemplo:
import { UserHelper } from "Helper";
UserHelper.login("usuario@teste.com", "************")
.then((usuario)=>{
console.log("Login realizado com sucesso :)");
})
.catch(console.error);
// Login realizado com sucesso :)
logout
static async logout ( ) : any
Esse método serve para realizar o logout (sair da conta de login) de forma assíncrono.
Exemplo:
import { UserHelper } from "Helper";
UserHelper.logout();
passwordReset
static passwordReset ( email : string ) : Promise
Útil para quando necessita redefinir a senha do usuário. Esse método recebe um parâmetro string com endereço e-mail do usuário que deseja redefinir a senha. Esse usuário receberá em seu e-mail o link de redefinição de senha. Além disso, esse método retorna uma Promise, sendo que:
Callback catch
Será acionado quando o envia da redefinição de senha falhar, retornando um objeto modelo Resultado com as informações de um erro específico.
Exemplo:
import { UserHelper } from "Helper";
UserHelper.passwordReset("usuario@teste.com")
.then(()=>{
console.log("Redefinição de senha enviado com sucesso :)");
})
.catch(console.error);
// Redefinição de senha enviado com sucesso :)
getUser
static getUser ( ) : Promise
Se quiser adquirir os dados do usuário logado no sistema, esse método é o ideal. Retorna uma Promise, sendo que:
Callback then
Será acionado se caso tiver algum usuário logado no sistema, retornando um objeto modelo Usuario com os dados do usuário em questão.
Callback catch
Será acionado se caso não possuir nenhum usuário logado, retornando um objeto modelo Resultado com as informações de um erro específico.
Exemplo:
import { UserHelper } from "Helper";
UserHelper.getUser()
.then(console.log)
.catch(console.error);
// object Usuario {...}
capturarListaUsuario
static capturarListaUsuario ( length : number | null ) : Promise
Para obter uma lista de usuários na base de dados, esse método é o ideal. Recebe um parâmetro (não obrigatório) numérico, indicando a quantidade máxima da lista que pretende receber. Retorna uma Promise, sendo que:
Callback then
Será acionado se caso a colheita de dados da base de dados ocorrer corretamente, retornando uma lista array de objeto modelo Usuario com os dados de cada usuário.
Callback catch
Será acionado se caso ocorrer um erro na tentativa de buscar os dados da base, retornando um objeto modelo Resultado com as informações de um erro específico.
Exemplo:
import { UserHelper } from "Helper";
UserHelper.capturarListaUsuario(5)
.then(console.log)
.catch(console.error);
/* object [
object Usuario {...},
object Usuario {...},
...
] */
capturarUsuario
static capturarUsuario ( path : string ) : Promise
Se queira buscar os dados de um usuário específico, esse método é o ideal, passando como parâmetro string o caminho de acesso no firestore. Retorna uma Promise, sendo que:
Callback then
Será acionado se caso a colheita de dados da base de dados ocorrer corretamente, retornando uma lista array de objeto modelo Usuario com os dados do usuário em questão.
Callback catch
Será acionado se caso ocorrer um erro na tentativa de buscar os dados da base, retornando um objeto modelo Resultado com as informações de um erro específico.
Exemplo:
import { UserHelper } from "Helper";
UserHelper.capturarUsuario("Usuarios/xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx")
.then(console.log)
.catch(console.error);
// object Usuario {...}
salvarUsuario
static salvarUsuario ( usuario : Usuario ) : Promise
Este método é responsável para salvar na base de dados as informações alteradas após ter adquirido essas informações da base em um objeto modelo Usuario. Ele recebe como parâmetro (obrigatório) um objeto modelo Usuario com o seu path já definido, caso o contrário, um erro ocorrerá e os dados não serão salvos, para esse caso específico, o método criarUsuario seria o ideal. Retorna uma Promise, sendo que:
Callback then
Será acionado se caso alteração de dados forem salvas na base de dados corretamente, retornando um objeto modelo Usuario com os dados do usuário em questão.
Callback catch
Será acionado se caso ocorrer um erro na tentativa de salvar os dados na base, retornando um objeto modelo Resultado com as informações de um erro específico.
Exemplo:
import { UserHelper } from "Helper";
async function alterarNome(novoNome){
ler user = await UserHelper.getUser();
console.log(user);
/* object Usuario {
"path": "Usuario/xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx",
"nome": "Fulano"
} */
user.nome = novoNome;
UserHelper.salvarUsuario(user)
.then(console.log)
.catch(console.error);
/* object Usuario {
"path": "Usuario/xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx",
"nome": "Ciclano"
} */
}
alterarNome("Ciclano");
criarUsuario
static criarUsuario ( novoUsuario : Usuario , senha : string ) : Promise
Se pretende criar um novo usuário, esse método é perfeito para isso. Ele recebe dois parâmetros obrigatórios, o primeiro parâmetro é um objeto modelo Usuario, nele deve conter o e-mail do usuário definido, caso o contrário, um erro ocorrerá; já o segundo parâmetro é uma string da senha definida pelo usuário. Retorna uma Promise, sendo que:
Callback then
Será acionado se caso o usuário for criado e seus dados forem salvas na base de dados corretamente, retornando um objeto modelo Usuario com os dados do usuário incluindo o seu novo path criado.
Callback catch
Será acionado se caso ocorrer um erro na tentativa de criar ou salvar os dados na base, retornando um objeto modelo Resultado com as informações de um erro específico.
Exemplo:
import { UserHelper } from "Helper";
import { Usuario } from "Models";
let usuario = new Usuario();
usuario.email = "ciclano@teste.com";
usuario.nome = "Ciclano";
conole.log(usuario);
/* object Usuario {
"path": null,
"email": "ciclano@teste.com",
"nome": "Ciclano"
} */
let senha = "*************";
criarUsuario()
.then(console.log)
.catch(console.error);
/* object Usuario {
"path": "Usuario/xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx",
"email": "ciclano@teste.com",
"nome": "Ciclano"
} */
Last updated