我想在 v-select 中使用来自 API 的响应。这是一个场景,我想使用从组件 A 到组件 B 的 API 调用,而不是在组件 B 中再次调用它。
组分 A:
methods: {
forVselect (id) {
this.$http.get(`/type/${id}`)
.then((res) => {
this.icecream = res.data})
.catch((e) => {console.log(e)})
}
},
mounted (){
this.forVselect (this.$route.params.un_id)
}
B组份:
<template>
<div class="The V-select">
<vselect v-model="input1" :options="[{label: 'Vanilla' , value: 'vanilla'}]" :dir="$vs.rtl ? 'rtl' : 'ltr'" />
</div>
</template>
<script>
import vselect from 'vue-select'
...
input1: null,
icecream: null
...
methods: {
forVselect (id) {
this.$http.get(`/type/${id}`)
.then((res) => {
this.icecream = res.data})
.catch((e) => {console.log(e)})
}
},
mounted (){
this.forVselect (this.$route.params.un_id)
}
</script>
- 如您所见,我在 v-select 中将组件 B 硬编码为“vanilla”,而不是我想使用来自 API 的数据,我想知道它是如何完成的。
这是我的 Api 回复:
[
{
"id": 3,
"flavor": "vanilla",
"price": "150",
"taste": "super",
"cream": "high",
"investments": null,
},
{
"id": 8,
"flavor": "chocolate",
"price": "250",
"taste": "super high",
"cream": "fantastic",
"investments": "too high",
}
...
]
- 请帮帮我。我尝试使用
label: type.flavor
,但没有显示任何内容。为了使代码有效,我想使用来自组件 A 中的 API 调用的响应