【发布时间】:2021-10-02 18:37:09
【问题描述】:
我正在尝试将来自 Vue 组件内的 Axios 请求的数据附加到 v-model,但由于某种原因它不想加载...
<div class="col-lg-6">
<div>
<div class="form-group mb-4">
<label for="section_english_name">Section English Name</label>
<input v-model="form.section_name_en" ref="section-name-english" type="text" name="title" class="form-control" id="section_english_name" >
<div v-if="form.errors.has('section_name_en')" v-html="form.errors.get('section_name_en')" class="text-danger"/></div>
</div>
</div>
内部数据()
data() {
return {
addonSection: {},
addonDetails: [0],
form: new Form({
section_name_en: this.addonSection[0].name_en,
section_name_ar: '',
quantity: 0,
addon_select_type: 1,
hide_addon_item: 1,
addon_name_en: [],
addon_name_ar: [],
price: [],
})
}
},
方法:
loadAddonSection () {
axios.get('/vendor/addons/' + this.addonid + '/edit').then((data) => {
this.addonSection = data.data;
})
},
Vue data() 甚至没有加载到 Vue 工具栏中我不知道为什么!!
当我评论“this.addonSection[0].name_en”时,它会完美加载数据 changed it to string or when i remove it
【问题讨论】:
-
在
this.addonSection没有数据的情况下创建组件时如何读取this.addonSection[0].name_en???? -
当我添加这一行“this.addonSection[0].name_en”时,它给了我错误,但没有它可以完美加载数据,没有任何问题
-
是的,因为这就是问题所在...再次阅读我的评论...
-
那么我应该如何在我的 v-model 中加载数据......我想将我的 API 请求中的数据附加到我的表单......请再次检查我的帖子
-
您必须再次阅读文档...参见Vue Lifecycle...This 是最重要的...当
created生命周期运行时,data可用。 ..所以当this.addonSection为空时,您尝试运行this.addonSection[0].name_en...所以它永远不会读取API...section_name_en应该是section_name_en: ''并且当created钩子开始时,您应该在那里读取 API 并存储您想要的数据...
标签: javascript php laravel vue.js vuejs2