<el-form-item label="合约名称/地址" ref="contractAddr" prop="contractAddr"
:rules="[{ required: true, message: '请输入合约名称/地址', trigger: 'blur' }]"
v-if="dataForm.blockChainType == 1 || dataForm.blockChainType == 3"
>
<el-input v-model="dataForm.contractAddr" placeholder="合约名称/地址"></el-input>
</el-form-item>
<el-form-item label="合约名称/地址" prop="noAddr"
:rules="[{ required: false, message: '', trigger: 'blur' }]"
v-else
>
<el-input v-model="dataForm.noAddr" disabled placeholder="合约名称/地址"></el-input>
</el-form-item>
其它的规则我都统一写在了数组里,只有需要根据不同条件(当选择btc时不需要输入,当选择lcn时必填)进行校验的写在了行内
<el-form :model="dataForm" :rules="dataRules" ref="dataForm">
<el-form-item label="所属公链" ref="blockChainType" prop="blockChainType">
<select v-model="dataForm.blockChainType" dict-type="block_chain_type" placeholder="请选择"></select>
</el-form-item>
<el-form-item label="代币类型" ref="blockChainType" prop="blockChainType">
<select v-model="dataForm.currencyType" dict-type="currency_type" placeholder="请选择"></select>
</el-form-item>
<el-form-item label="币种精度" ref="accuracy" prop="accuracy">
<el-input v-model="dataForm.accuracy" placeholder="币种精度"></el-input>
</el-form-item>
<el-form-item label="合约名称/地址" ref="contractAddr" prop="contractAddr"
:rules="[{ required: true, message: '请输入合约名称/地址', trigger: 'blur' }]"
v-if="dataForm.blockChainType == 1 || dataForm.blockChainType == 3"
>
<el-input v-model="dataForm.contractAddr" placeholder="合约名称/地址"></el-input>
</el-form-item>
<el-form-item label="合约名称/地址" prop="contractAddr"
:rules="[{ required: false, message: '', trigger: 'blur' }]"
v-else
>
<el-input v-model="dataForm.contractAddr" disabled placeholder="合约名称/地址"></el-input>
</el-form-item>
</el-form>
dataRules: {
blockChainType: [{ required: true, message: '请选择所属公链', trigger: 'change' }],
currencyType: [{ required: true, message: '请选择代币类型', trigger: 'change' }],
accuracy: [{ required: true, message: '请输入币种精度', trigger: 'blur' }],
},