如何在 table - 元素 UI - Vue JS 上为嵌套数据设置有效的 prop 路径
How to set a valid prop path for nested data on a table - Element UI - Vue JS
我正在尝试验证一个表单,其中一部分使用元素-ui 在 table 中表示。但是我无法将有效的道具传递给 el-form-item。
数据模型看起来像这样。
form: {
invoices: [
{
amount: '',
items: [{ name: '', value: '' }]
}
]
}
在 html 部分我有这样的东西:
<template v-for="(invoice, index) in form.invoices">
<el-form-item :prop="`invoices.${index}.amount`" :rules="rules.invoiceAmount">
<el-input/>
</el-form-item>
<el-table :data="invoice.items">
<el-table-column prop="name">
<template scope="scope" slot-scope="scope">
<el-form-item :prop="`invoices.${index}.items.${scope.$index}.name`" :rules="rules.items">
<el-input/>
</el-form-item>
</template>
</el-table-column>
</el-table>
</template>
由于错误
,第二个 <el-form-item>
未验证
"Error: please transfer a valid prop path to form item!"
我还尝试将以下内容作为道具传递
items.${scope.$index}.name
但这也没有用。有什么想法吗?
正确的路径是invoices[${index}].items[${scope.$index}].name
我正在尝试验证一个表单,其中一部分使用元素-ui 在 table 中表示。但是我无法将有效的道具传递给 el-form-item。
数据模型看起来像这样。
form: {
invoices: [
{
amount: '',
items: [{ name: '', value: '' }]
}
]
}
在 html 部分我有这样的东西:
<template v-for="(invoice, index) in form.invoices">
<el-form-item :prop="`invoices.${index}.amount`" :rules="rules.invoiceAmount">
<el-input/>
</el-form-item>
<el-table :data="invoice.items">
<el-table-column prop="name">
<template scope="scope" slot-scope="scope">
<el-form-item :prop="`invoices.${index}.items.${scope.$index}.name`" :rules="rules.items">
<el-input/>
</el-form-item>
</template>
</el-table-column>
</el-table>
</template>
由于错误
,第二个<el-form-item>
未验证
"Error: please transfer a valid prop path to form item!"
我还尝试将以下内容作为道具传递
items.${scope.$index}.name
但这也没有用。有什么想法吗?
正确的路径是invoices[${index}].items[${scope.$index}].name