vue表单rules校验是动态的
·
表单代码如下:
<el-form ref="form" label-width="60px" :model="formData" :rules="newRules">
<el-form-item label="分类类型" prop="type">
<el-select
v-model="formData.type"
:data="typeList"
/>
</el-form-item>
<el-form-item label="预算科目" prop="subjectTree">
<el-select
v-model="formData.subjectTree"
:data="valueList"
/>
</el-form-item>
<el-form-item label="资金管理方式" prop="value">
<el-select
v-model="formData.value"
:data="valueList"
/>
</el-form-item>
</el-form>
rules代码:
本来是把rules写在data里的 发现校验并未生效 后来只能放在computed里
computed: {
newRules() {
const { formData } = this
return {
type: [
{
required: true,
message: this.$t('validator.required', { name: '分类类型' })
}
],
subjectTree: [
{
required: formData.type === '0' ? true : false,
message: this.$t('validator.required', { name: '预算科目' })
}
],
value: [
{
required: formData.type === '1' ? true : false,
message: this.$t('validator.required', { name: '资金管理方式' })
}
]
}
}
},
魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。
更多推荐


所有评论(0)