#VemProReact
Correção da atividade!
App.js
#VemProReact
Correção da atividade!
Dados.js
<Input
fullWidth={true}
name="id"
label="ID"
placeholder="id"
size="small"
value={usuarioForm?.id || ''}
disabled={true}
/>LotacaoPrincipal.js
#VemProReact
Correção da atividade!
mutations.js
import gql from 'graphql-tag';
export const UPDATE_USUARIO = gql`
mutation(
$id: String!
$nome: String!
$documento: String!
$genero: USR_e_genero_type!
$contato: USR_contato_input_type_input
$cargo: USR_cargo_input_type_input
) {
update_usuario(
input: {
id: $id
nome: $nome
documento: $documento
genero: $genero
contato: $contato
cargo: $cargo
}
) {
......
id
nome
documento
genero
contato {
email
telefone
}
cargo {
id
descricao
}
}
}
`;#VemProReact
Correção da atividade!
Dados.js
<Mutation
mutation={UPDATE_USUARIO}
onCompleted={({ update_usuario }) => {
setUsuarioForm(update_usuario)
enqueueToast('Usuário atualizado com sucesso!', { type: 'success' });
}}
onError={() => {
setUsuarioForm(usuario);
enqueueToast('Não foi possível atualizar o usuário!', { type: 'error' });
}}
>
{(updateUsuario, { loading }) => (
<>
<form
onSubmit={e => {
e.preventDefault();
updateUsuario({ variables: usuarioForm });
}}
>
...#VemProReact
Correção da atividade!
Dados.js
...
<Button
type="submit"
loading={loading}
disabled={loading}
>
Atualizar os dados do usuário
</Button>
...#VemProReact
localStorage
#VemProReact
localStorage
Atribuir valores:
localStorage.setItem('chave', 'valor'); // RECOMENDADO
localStorage['chave'] = 'valor';
localStorage.chave = 'valor';Recuperar valores:
localStorage.getItem('chave'); // RECOMENDADO
localStorage['chave'];
localStorage.chave;#VemProReact
sessionStorage
#VemProReact
sessionStorage
Atribuir valores:
sessionStorage.setItem('chave', 'valor'); // RECOMENDADO
sessionStorage['chave'] = 'valor';
sessionStorage.chave = 'valor';Recuperar valores:
sessionStorage.getItem('chave'); // RECOMENDADO
sessionStorage['chave'];
sessionStorage.chave;#VemProReact
Estrutura de pastas
Na teoria:
#VemProReact
Estrutura de pastas
Na prática (projeto Dashboard Usuário):
#VemProReact
Dúvidas?
#VemProReact
Atividade!
#VemProReact
Obrigado!