Saya perlu mengaktifkan komponen modal daripada kedai vuex. Apabila API hasil berjaya, saya menggunakan 'this.$refs['modalSuccess'].show()' untuk menunjukkan modal di dalam komponen!
Tetapi saya perlu menukar fungsi "sendLeadResponse" daripada kaedah (komponen) kepada operasi (storan). Selepas itu saya tidak boleh lagi mengaktifkan modal menggunakan 'this.$refs['modalSuccess'].show()' ini.
Adakah terdapat cara untuk memanggilnya dari kedai?
Ini ialah prosesnya:
Komponen dengan butang dan modal
商店的操作
tindakan: { async sendLeadResponse({commit}, dataLeadObject){ const jsonDataObject = JSON.stringify(dataLeadObject) tunggu ambil("http://localhost:5000/api/lead/leadResponse", { kaedah: "POST", pengepala: {"Content-type": "application/json"}, badan: jsonDataObject }) .then((resp) => resp.json()) .then((data) => { jika (data.error) { commit('MESSAGE_RESPONSE', data.error) } lain { commit('RESET_LEAD_RESPONSE') !!!!!!!!!!! ini.$refs['modalSuccess'].tunjukkan() !!!!!!!!!!!!!! [is tidak berfungsi) } }) }, }
Kedai Vuex direka untuk hanya mementingkan keadaan. Ia tidak mempunyai akses langsung kepada komponen anda atau
this.$refs
. Perkara yang boleh anda lakukan ialah tetapkan keadaan dalam storan berdasarkan hasil yang anda perolehi dan pastikan komponen anda mengakses keadaan itu dan/atau mengembalikan janji daripada tindakan anda untuk menghantar hasilnya terus kepada komponen anda