提交 4402f209 authored 作者: 王鹏飞's avatar 王鹏飞

优化表单校验规则

上级 19a977a9
差异被折叠。
......@@ -71,7 +71,7 @@
"semver": "^1.1.4"
},
"dependencies": {
"@ezijing/vue-form": "^2.0.12",
"@ezijing/vue-form": "^2.1.9",
"animate.css": "^4.1.0",
"axios": "^0.19.2",
"cross-env": "^7.0.2",
......
......@@ -21,19 +21,24 @@
style="max-width: 680px"
>
<el-form-item label="姓名" prop="provider_name">
<el-input v-model.trim="ruleForm.provider_name"></el-input>
<el-input v-model="ruleForm.provider_name" @blur="onBlur('provider_name')"></el-input>
</el-form-item>
<el-form-item label="推荐信内容" prop="letter_content">
<el-input type="textarea" :autosize="{ minRows: 6 }" v-model.trim="ruleForm.letter_content"></el-input>
<el-input
type="textarea"
:autosize="{ minRows: 6 }"
v-model="ruleForm.letter_content"
@blur="onBlur('letter_content')"
></el-input>
</el-form-item>
<el-form-item label="手机号" prop="provider_phone_number">
<el-input v-model.trim="ruleForm.provider_phone_number"></el-input>
<el-input v-model="ruleForm.provider_phone_number"></el-input>
</el-form-item>
<el-form-item label="工作单位" prop="provider_company_name">
<el-input v-model.trim="ruleForm.provider_company_name"></el-input>
<el-input v-model="ruleForm.provider_company_name" @blur="onBlur('provider_company_name')"></el-input>
</el-form-item>
<el-form-item label="职务" prop="provider_job_title">
<el-input v-model.trim="ruleForm.provider_job_title"></el-input>
<el-input v-model="ruleForm.provider_job_title" @blur="onBlur('provider_job_title')"></el-input>
</el-form-item>
</el-form>
<div class="buttons">
......@@ -67,7 +72,7 @@ export default {
rules: {
provider_name: [{ required: true, message: '请输入姓名', trigger: 'blur' }],
letter_content: [{ required: true, message: '请输入推荐信内容', trigger: 'blur' }],
provider_phone_number: [{ required: true, message: '请输入手机号', trigger: 'blur' }],
provider_phone_number: [{ required: true, pattern: /^1[3-9]\d{9}$/, message: '请输入手机号', trigger: 'blur' }],
provider_company_name: [{ required: true, message: '请输入工作单位', trigger: 'blur' }],
provider_job_title: [{ required: true, message: '请输入职务', trigger: 'blur' }]
},
......@@ -110,6 +115,11 @@ export default {
},
getClientWidth() {
this.clientWidth = document.body.clientWidth
},
onBlur(key) {
if (this.ruleForm[key]) {
this.ruleForm[key] = this.ruleForm[key].trim()
}
}
},
mounted() {
......
......@@ -22,7 +22,7 @@ export default function(_this) {
beforeRequest(data) {
const honors = data.map(item => {
return ['time', 'title', 'institution_cn'].reduce((result, key) => {
result[key] = item[key]
result[key] = item[key] || ''
return result
}, {})
})
......@@ -39,21 +39,21 @@ export default function(_this) {
type: 'v-datepicker',
label: '获取时间',
model: 'time',
attrs: { type: 'date', valueFormat: 'yyyy-MM-dd', placeholder: '请选择获取时间' },
rules: [{ required: true, message: '请选择获取时间', trigger: 'blur' }]
attrs: { type: 'date', valueFormat: 'yyyy-MM-dd', placeholder: '请选择获取时间' }
// rules: [{ required: true, message: '请选择获取时间', trigger: 'blur' }]
},
{
type: 'v-input',
label: '荣誉奖励',
model: 'title',
attrs: { placeholder: '请输入荣誉奖励' },
rules: [{ required: true, message: '请输入荣誉奖励', trigger: 'blur' }]
attrs: { placeholder: '请输入荣誉奖励' }
// rules: [{ required: true, message: '请输入荣誉奖励', trigger: 'blur' }]
},
{
type: 'v-input',
label: '证书颁发机构',
model: 'institution_cn',
rules: [{ required: true, message: '请输入证书颁发机构', trigger: 'blur' }]
model: 'institution_cn'
// rules: [{ required: true, message: '请输入证书颁发机构', trigger: 'blur' }]
}
]
}
......
......@@ -22,7 +22,7 @@ export default function(_this) {
beforeRequest(data) {
const trainings = data.map(item => {
return ['start_date', 'end_date', 'institution_cn', 'course_cn'].reduce((result, key) => {
result[key] = item[key]
result[key] = item[key] || ''
return result
}, {})
})
......@@ -43,8 +43,8 @@ export default function(_this) {
type: 'month',
placeholder: '请选择培训开始时间',
valueFormat: 'yyyy-MM'
},
rules: [{ required: true, message: '请选择培训开始时间', trigger: 'blur' }]
}
// rules: [{ required: true, message: '请选择培训开始时间', trigger: 'blur' }]
},
{
type: 'v-datepicker',
......@@ -54,20 +54,20 @@ export default function(_this) {
type: 'month',
placeholder: '请选择培训结束时间',
valueFormat: 'yyyy-MM'
},
rules: [{ required: true, message: '请选择培训结束时间', trigger: 'blur' }]
}
// rules: [{ required: true, message: '请选择培训结束时间', trigger: 'blur' }]
},
{
type: 'v-input',
label: '培训机构',
model: 'institution_cn',
rules: [{ required: true, message: '请输入培训机构', trigger: 'blur' }]
model: 'institution_cn'
// rules: [{ required: true, message: '请输入培训机构', trigger: 'blur' }]
},
{
type: 'v-input',
label: '课程名称',
model: 'course_cn',
rules: [{ required: true, message: '请输入课程名称', trigger: 'blur' }]
model: 'course_cn'
// rules: [{ required: true, message: '请输入课程名称', trigger: 'blur' }]
}
]
}
......
......@@ -76,11 +76,11 @@
<a class="inner" :href="item.oss_sign_url" target="_blank">
<div class="pic"><img :src="item.oss_sign_url" /></div>
<div class="name">{{ item.file_type_label }}</div>
<div style="margin-right: 40px" v-if="item.status_desc">
<div v-if="item.status_desc">
<el-tag size="mini">{{ item.status_desc }}</el-tag>
</div>
</a>
<el-button-group>
<el-button-group v-if="hasButton" style="margin-left: 40px">
<el-button size="mini" :disabled="item.status === 'INACTIVE'" @click="handleRemove(item)"
>删除</el-button
>
......@@ -327,9 +327,12 @@ export default {
}
},
computed: {
watermark() {
const { watermark = '清控紫荆教育' } = this.$route.query
return watermark
right() {
const { right = '' } = this.$route.query
return right
},
hasButton() {
return this.right.includes('x')
}
},
methods: {
......
......@@ -18,7 +18,7 @@
<el-form-item label="手机号" prop="phone_number">
<el-input v-model="ruleForm.phone_number" :maxlength="11"></el-input>
</el-form-item>
<el-form-item label="邮" prop="email">
<el-form-item label="邮" prop="email">
<el-input v-model="ruleForm.email"></el-input>
</el-form-item>
<div class="buttons">
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论