const form = reactive({
id : '',
Items: [],
})
function handleAddItem () {
form.Items.push({
id : uuid(),
itemName : '',
itemType : 'HbRadio',
itemPlaceholder: '请输入'
})
}
function handleRemoveItem (index) {
if (form.Items.length > 1) {
form.Items.splice(index, 1)
} else {
message.error('至少需要一个选项!')
}
}
<n-form-item
v-for="(item, index) in form.Items"
:key="item.id"
:label="`备选项${index + 1}`"
:path="`appSurveyQuestionItems[${index}].itemName`"
:rule="{
required: true,
message: `请输入选项${index + 1}的显示内容`,
trigger: ['input', 'blur']
}"
>
<n-input
v-model:value="item.itemName"
clearable
/>
<n-button
style="margin-left: 12px"
@click="handleRemoveItem(index)"
>
删除
</n-button>
</n-form-item>