vue3 中 给a-select 动态设置数据源
时间: 2024-05-10 09:20:02 浏览: 173
可以通过 `v-model` 绑定一个变量,然后动态改变这个变量的值来实现动态设置数据源。
示例代码:
```
<template>
<a-select v-model="selected">
<a-select-option v-for="option in options" :key="option.value" :value="option.value">
{{ option.label }}
</a-select-option>
</a-select>
</template>
<script>
export default {
data() {
return {
selected: null,
options: [
{ label: 'Option 1', value: 'option1' },
{ label: 'Option 2', value: 'option2' },
{ label: 'Option 3', value: 'option3' },
],
}
},
methods: {
async loadOptions() {
// 异步加载数据源
const newOptions = await fetch('/api/options').then((res) => res.json())
this.options = newOptions
},
},
mounted() {
// 在组件挂载后调用 loadOptions 方法加载数据源
this.loadOptions()
},
}
</script>
```
在上面的示例中,我们首先定义了一个 `selected` 变量,用于绑定 `a-select` 的选中值。然后定义了一个 `options` 数组,用于存储数据源。
在 `loadOptions` 方法中,我们使用 `fetch` API 异步加载数据源,然后将加载后的数据赋值给 `options` 变量。
在组件挂载后,我们调用 `loadOptions` 方法来加载数据源。这样,每次加载数据源后,`options` 变量都会更新,从而动态改变了 `a-select` 的数据源。
阅读全文