Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

277
Visualizações
Restablecimiento del valor de estado de Vue.js desde la entrada después de una actualización completa. ¿Como arreglarlo?

Soy nuevo en Vue.js y he creado una página de edición de perfil donde los usuarios pueden editar información básica como:

  • Primer nombre
  • Apellido
  • Correo electrónico

Ejemplo de entrada:

 <b-col sm="6"> <b-form-group label="First Name" label-for="firstName" > <validation-provider #default="{ errors }" name="First Name" rules="required" > <b-form-input id="firstName" v-model="firstName" placeholder="First Name" name="firstName" /> <small class="text-danger">{{ errors[0] }}</small> </validation-provider> </b-form-group> </b-col>

Ahora estoy cargando el valor del usuario desde el valor del estado de esta manera:

 data() { return { firstName: '', lastName: '', email: '', required, } }, mounted() { this.firstName = this.$store.state.authUser.user.firstName this.lastName = this.$store.state.authUser.user.lastName this.email = this.$store.state.authUser.user.email },

Funciona perfectamente y muestra valor en la entrada. Pero cuando el usuario presiona la actualización completa, los valores desaparecen de todas las entradas.

¿Alguna idea de cómo resolver este problema? No puedo encontrar ninguna forma ya que soy nuevo en Vue.js y estoy trabajando en el primer proyecto.

Gracias

about 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

La tienda solo está en la memoria, por lo que si la página se actualiza, todos los datos desaparecen.

Hay varias formas de guardar los datos en el navegador y conservarlos, incluso después de actualizar. Sugeriría buscar en algo como: https://github.com/robinvdvleuten/vuex-persistedstate

También encontré su pregunta ya respondida aquí: estado de Vuex en la actualización de la página

Allí también se sugiere usar un estado persistente como este: import { Store } from 'vuex' import createPersistedState from 'vuex-persistedstate' import * as Cookies from 'js-cookie'

 const store = new Store({ // ... plugins: [ createPersistedState({ getState: (key) => Cookies.getJSON(key), setState: (key, state) => Cookies.set(key, state, { expires: 3, secure: true }) }) ] })

Además, dado que eres un principiante, aquí hay un truco para hacer que tu código sea un poco más ordenado. Importar mapState así:

 import { mapState } from 'vuex';

Y usa las variables de tu tienda así:

 computed: { ...mapState({ firstName: state => state.authUser.user.firstName, lastName: state => state.authUser.user.lastName , email: state => state.authUser.user.email , }), },

Entonces puedes usarlos como de costumbre.

about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda