Javascript 在页面加载时获取数据并将其分配给Vue JS中的select选项
我有一个简单的表单,其中有一个选择类型表单。此表单在创建时没有选项,因为我想从后端动态添加它们。 这是我的密码:Javascript 在页面加载时获取数据并将其分配给Vue JS中的select选项,javascript,html,vue.js,Javascript,Html,Vue.js,我有一个简单的表单,其中有一个选择类型表单。此表单在创建时没有选项,因为我想从后端动态添加它们。 这是我的密码: <template> <div> <b-container fluid> <b-row align-h="center"> <b-col cols="14" sm="10" md="8" lg="6"
<template>
<div>
<b-container fluid>
<b-row align-h="center">
<b-col cols="14"
sm="10"
md="8"
lg="6"
xl="4">
<b-form-group id="exampleInputGroup3"
:label="$t('modellingPage2.modeltypeLabel')"
label-for="exampleInput3"
:description="$t('modellingPage2.modeltypeDescription')">
<b-form-select id="exampleInput3"
:options="modeltypes"
required
v-model="form.modeltype">
</b-form-select>
</b-form-group>
</b-form>
</b-col>
</b-row>
</b-container>
</div>
</template>
<script>
import AuthenticationService from '.././services/AuthenticationService'
export default {
data () {
return {
form: {
modelname: '',
modeltype: '',
typesArray: ''
},
modeltypes: [
{text: 'Model', value: null},
this.testopen
],
show: true
}
},
methods: {
async getUnits () {
try {
const response = await AuthenticationService.getUnits()
this.typesArray = response.data.ModelType
} catch (error) {
this.error = error.response.data.error
}
}
},
created () {
return this.getUnits()
},
computed: {
testopen () {
return this.typesArray.forEach(element => element)
}
}
}
</script>
从“.././services/AuthenticationService”导入AuthenticationService
导出默认值{
数据(){
返回{
表格:{
型号名称:“”,
模型类型:“”,
类型数组:“”
},
型号:[
{text:'Model',值:null},
这是testopen
],
秀:真的
}
},
方法:{
异步getUnits(){
试一试{
const response=wait AuthenticationService.getUnits()
this.typesArray=response.data.ModelType
}捕获(错误){
this.error=error.response.data.error
}
}
},
创建(){
返回此参数。getUnits()
},
计算:{
testopen(){
返回this.typesArray.forEach(element=>element)
}
}
}
它是AuthenticationUser内部的Axios Get请求。然而,问题在于数据的本地使用。我无法从我的模型类型数据中的数组中推送元素。您的选择使用“模型类型”作为选项,但您的getUnits调用正在设置typesArray 您的select使用“modeltypes”作为选项,但您的getUnits调用正在设置typesArray。这是什么。testopen?谢谢您,这是答案。我被困了一天,没有意识到这一点。如果你把它贴在书页上,我可以确认:你可以考虑删除这个问题。把它贴在答案上。但是如果你也删除了,我不会生气的。