Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

418
Vistas
VueJS/Vuex: ¿cómo manejar dos confirmaciones al mismo tiempo?

Estoy aprendiendo VueJS y Vuex y trato de hacer un pequeño juego de administración con una tienda Vuex.

Tengo 100 alimentos en la tienda y todos los días, mis cuatro Peones necesitan comer 1 unidad de alimento.

Así que miro la tienda para la hora de comer en mi componente Peon.vue, del cual existen cuatro instancias:

 store.watch((state) => { if (state.time.hours === this.mealTime) { store.commit("mealTime"); } });

Y en mi tienda index.js, la confirmación hace esto:

 mealTime(state) { state.ressources.food = { ...state.ressources.food, quantity: state.ressources.food.quantity - 1, } }

Me he dado cuenta de que no funciona cuando tengo más de 1 commit al mismo tiempo (¿imagínate que 2 peones comen a las 7 am?!). Va en un bucle infinito y el mensaje:

 Maximum recursive updates exceeded. This means you have a reactive effect that is mutating its own dependencies and thus recursively triggering itself. Possible sources include component template, render function, updated hook or watcher source function.

Podría olvidarme de este problema y hacerlos comer en otro momento, pero supongo que tendré este problema en otras situaciones.

¿Cómo puedo manejar varias confirmaciones al mismo tiempo? ¿Debo usar Acciones? Si debo usar acciones, ¿es posible "encadenar" una confirmación una tras otra?

Gracias por tu ayuda

about 4 years ago · Juan Pablo Isaza
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda