重点:
1、父组件传动态渲染的表单数组给子组件
2、动态表单校验在子组件触发校验,把触发校验的方法暴露给父组件,在父组件提交表单的时候,调用子组件的方法

父组件模块代码
<template>
<el-card>
<el-form
ref="formTop"
:model="_form"
label-width="150px"
:inline="true"
:rules="formTopRule"
>
<el-form-item :label="t('Upper_Keyin_Limt')" prop="upperKeyinValue">
<el-input-number v-model="_form.upperKeyinValue" :controls="false" />
</el-form-item>
<el-form-item :label="t('Lower_Keyin_Limt')" prop="lowerKeyinValue">
<el-input-number v-model="_form.lowerKeyinValue" :controls="false" />
</el-form-item>
<el-form-item
style="
position: fixed;
bottom: 0;
right: 50%;
transform: translateX(-50%);
z-index: 1;
width: auto;
"
>
<div>
<el-button type="primary" @click="submitFormTop">{
{
$t('options.save')
}}</el-button>
</div>
</el-form-item>
</el-form>
<el-collapse v-model="chartType.chartTypeArr" @change="handleChange">
<el-collapse-item title="Mean" name="Mean">
<formBottomArr
v-if="_form.spcChartDefaultUpdateVOList.length"
:formBottomArr="
_form.spcChartDefaultUpdateVOList.filter(
(item) => item.chartType < 5
)
"
ref="formMean"
/>
</el-collapse-item>
<el-collapse-item title="Single"