van-form表单中有多个选择器 怎样写最简介
时间: 2023-07-13 12:20:52 浏览: 166
可以使用 Vue 的 v-for 指令结合动态绑定的数据来简化代码。具体实现如下:
```html
<template>
<form>
<div v-for="field in fields" :key="field.name">
<label :for="field.name">{{ field.label }}</label>
<select :id="field.name" :name="field.name">
<option v-for="option in field.options" :key="option.value" :value="option.value">
{{ option.label }}
</option>
</select>
</div>
</form>
</template>
<script>
export default {
data() {
return {
fields: [
{
name: 'category',
label: 'Category',
options: [
{ label: 'Option 1', value: 'option1' },
{ label: 'Option 2', value: 'option2' },
{ label: 'Option 3', value: 'option3' },
],
},
{
name: 'color',
label: 'Color',
options: [
{ label: 'Red', value: 'red' },
{ label: 'Green', value: 'green' },
{ label: 'Blue', value: 'blue' },
],
},
],
};
},
};
</script>
```
这样,我们就可以在 `fields` 数组中动态定义表单中的每一个选择器,使用 v-for 指令动态渲染出来。同时,我们还可以使用表单元素的 `name` 属性来收集表单数据,使用 `id` 属性来为 `label` 元素和 `select` 元素建立关联。
阅读全文