【修改】增加校验

This commit is contained in:
zhoulingpo
2023-04-26 13:50:19 +08:00
parent 3b326f63ca
commit 7eaee0f584
+35 -14
View File
@@ -3,19 +3,19 @@
<el-dialog title="新增/编辑标签" :visible.sync="dialogVisible" width="30%" :before-close="handleClose"> <el-dialog title="新增/编辑标签" :visible.sync="dialogVisible" width="30%" :before-close="handleClose">
<div class="form"> <div class="form">
<el-form ref="form" :model="form" label-width="80px" :rules="rule"> <el-form ref="form" :model="form" label-width="80px" :rules="rule">
<el-form-item label="上级标签"> <el-form-item label="上级标签" prop="nodeLabel">
<el-cascader v-model="form.nodeLabel" placeholder="请选择上级标签" :options="cascaderOptions" filterable :props="{ checkStrictly: true }" clearable > <el-cascader v-model="form.nodeLabel" placeholder="请选择上级标签" :options="cascaderOptions" filterable :props="{ checkStrictly: true }" clearable >
</el-cascader> </el-cascader>
</el-form-item> </el-form-item>
<el-form-item label="标签名称" prop="label"> <el-form-item label="标签名称" prop="label">
<el-input v-model="form.label"></el-input> <el-input v-model="form.label" max="100" placeholder="请输入标签名称"></el-input>
</el-form-item> </el-form-item>
<el-form-item label="排序"> <el-form-item label="排序" prop="orderNum">
<el-input v-model="form.orderNum"></el-input> <el-input v-model="form.orderNum" placeholder="请输入排序"></el-input>
</el-form-item> </el-form-item>
<el-form-item label="备注"> <el-form-item label="备注" prop="remark">
<el-input v-model="form.remark"></el-input> <el-input v-model="form.remark" max="100" placeholder="请输入备注"></el-input>
</el-form-item> </el-form-item>
<el-form-item> <el-form-item>
<el-button @click="cancel" class="btn">取消</el-button> <el-button @click="cancel" class="btn">取消</el-button>
@@ -36,6 +36,16 @@
export default { export default {
name: 'labelModal', name: 'labelModal',
data() { data() {
var checkNum = (rule, value, callback) => {
setTimeout(() => {
let test=/^[1-9]\d*$/
if (!test.test(value)) {
callback(new Error('请输入数字'));
} else {
callback()
}
}, 1000)
}
return { return {
dialogVisible: false, dialogVisible: false,
form: { form: {
@@ -49,14 +59,17 @@ export default {
], ],
rule: { rule: {
name: [ label: [
{ required: true, trigger: 'blur', message: '请输入标签名称' } { required: true, trigger: 'blur', message: '请输入标签名称' }
], ],
resource: [ nodeLabel: [
{ { required: true, trigger: 'change', message: '请选择上级标签' }
required: true, trigger: 'change', message: '请选择标签属性' ],
} orderNum: [
] { required: true, trigger: 'change', message: '请输入排序' },
{ validator:checkNum , trigger: 'change'}
],
}, },
}; };
}, },
@@ -88,11 +101,19 @@ export default {
this.$refs.form.clearValidate('name') this.$refs.form.clearValidate('name')
this.$forceUpdate() this.$forceUpdate()
} else { } else {
this.form = {} this.form = {
label:undefined,
name:'',
sort:'',
orderNum:'',
remark:''
}
this.$refs.form.clearValidate()
this.$forceUpdate() this.$forceUpdate()
} }
}) })
}, },
cancel() { cancel() {
this.dialogVisible = false this.dialogVisible = false