v2.5.2
Giriş yap

Vue.js de emit i beklemek

selim
355 defa görüntülendi

Merhaba,

Vuejs de iki componentim var. Parent ve child. childde bir emit kullanıp parent componentinde servis çağırmak istiyorum. Bunu yapıyorum ancak birde child componentte parent taki servisin çalıp bitmesini beklemk istiyorum. Bunu yapabilir miyim ?

Child component:

this.$emit('triggerServices')
console.log(item)

Parent Component:

async triggerServices() {
      const _data = await this.fetchService()
      await this.getAllRulebooks(_data)
    },

Ben istiyorum ki triggerServices emit olduğunda alttaki iki servis çalışsın. Sonra child daki console.log çalışsın.

Cevap yaz
Cevaplar (2)
selim
801 gün önce

@ilyasbilgihan cevabın için teşekkür ederim, denedim fakat olmadı. Bu tarz bi yapıyı daha öncede denemiştim. Farklı bir şekilde çözmeye çalışacam.

ilyasbilgihan
804 gün önce
// Child
this.$emit('triggerServices', (res) => {
    console.log(res)
})
// Parent
async triggerServices(callback) {
  const _data = await this.fetchService()
  await this.getAllRulebooks(_data)
  callback("service fetched")
}

Yukarıdaki yöntemi dener misin?

Vue Emit Event