VueJS cara menunggu data axios sebelum meneruskan
<p>Saya mempunyai kod ini yang sepatutnya menghuraikan data kepada pembolehubah dan kemudian menghantar permintaan siaran. </p>
<p>Masalahnya ialah, saya memerlukan harta daripada API tetapi saya tidak tahu bagaimana untuk menunggu ia kembali. </p>
<pre class="brush:php;toolbar:false;">addFieldData(data, generatorData) {
this.populateModel(data);
console.log(this.model);
this.$axios.post('data/webform/fields', this.model)
.then(res => {
console.log(res);
ini.$notify({
kumpulan: "app",
tajuk: ini.$t("general.success"),
teks: ini.$t("umum.tindakan_telah_diproses"),
jenis: "info"
});
}).tangkap(ralat => {
ini.$notify({
kumpulan: "app",
tajuk: ini.$t("error.error"),
teks: ini.$t("error.error_ocured"),
jenis: "ralat"
});
console.log(error);
});
},
populateModel(data) {
this.model.label = data.label ?? {};
this.model.hint = data.placeholder {};
this.model.attributes = data.attributes {};
this.model.maxlength = data.maxlength 0;
this.model.position = this.getFieldPosition();
this.model.required = data.required true;
this.model.visible = data.visible??
this.model.disabled = data.disabled ??
this.model.style_classes = data.style_classes ??
this.model.model = data.model ?? "";
this.model.default = data.default ?? "";
this.model.input_type = data.input_type ??
this.model.hint = data.hint ?? "";
this.model.help = data.help "";
this.model.type = data.type;
},
async getFieldPosition() {
const res = tunggu ini.$axios.get('/data/webform/' + this.idWebform + '/itemsCount');
this.model.position = res.data.data.count + 1;
kembalikan res.data.data.count;
},</pre>
<p>Dalam addFieldData, saya memanggil populateModel, yang sepatutnya mendapat kedudukan daripada API, tetapi panggil permintaan siaran sebelum getFieldPosition mengembalikan data. </p>
<p>Saya mahu cuba menunggu getFieldPosition dahulu dan kemudian menghantar permintaan siaran. </p>