在这里,服务文件夹中的axios API选择下拉列表值以设置localstorage(id),然后获取api响应数据。但我的问题只是页面刷新以获取data.how,而没有页面刷新以获取数据
@change=“onChange”更改下拉列表值以在本地存储中设置id。然后获取id到数据,其工作正常。但下拉列表选择值仅显示页面刷新
const dropdownItems = ref(items);
const dropdownItem = ref(null);
onMounted(() => {
ApiService.getStores().then((data) => {
data.forEach((value) => {
items.push({ name: value.shop,value:value.id });
});
});
});
const onChange = event => {
localStorage.setItem('id',event.value);
}
<Dropdown
id="state"
v-model="dropdownItem"
:options="dropdownItems"
:filter="true"
optionLabel="name"
optionValue="value"
@change="onChange"
/>
api.service.js
const id = localStorage.getItem('id');
axios.get(API_URL+'/product/all?id='+id)
如何触发api.service.js
1条答案
按热度按时间xfb7svmp1#
尝试将
dropdownItems
设为返回items
的计算值。const dropdownItems = computed(() => items)
这将确保当
items
改变时,变量dropdownItems
被重新计算。