Augusto Cardenas
Augusto Cardenas
Vue.js
Comparte:

como puedo hacer select dependientes

Hola, estoy comenzando con esto de vue js, estoy intentando hacer combo box dependientes con select2 y axios , he visto unos ejemplos que lo realizan con componentes, mi duda como puede enviar una petición ajax desde un componente a otro, pero los necesito por separados, se puede hacer eso o mejor tomar otra opción,
saludos
Jorge García
Jorge García (2780 xp)
Hola Augusto, sí es posible transmitir datos de un componente a otro, puedes hacerlo con un bus de eventos, con portales o con Vuex.
Augusto Cardenas
Augusto Cardenas (28 xp)
tiene algun ejemplo
Johan Mendoza
Johan Mendoza (1528 xp)
La forma mas sencilla es con eventos usando una nueva instancia de Vue.
En tu archivo principal debes declarar una variable global con dicha instancia:
window.Bus = new Vue()

Luego para transmitir información desde un componente a otro simplemente utiliza la variable global dentro del componente con el método $emit para emitir y $on para la recepción:

// Componente emisor
// Emite los datos deseados
Bus.$emit(''cualquier-nombre', {
  testing: 'Cualquier dato',
  other: 'Otro dato'
})

// Componente receptor
// Captura los datos emitidos desde el componente emisor
// "cualquier-nombre" es el nombre del evento y debe ser igual al del emisor
Bus.$on('cualquier-nombre', data => {
  console.log(data) // data contiene un objeto con los datos
})