ant design vue 注册表单的使用示例
时间: 2023-08-03 10:04:01 浏览: 175
vue实例,收集表单数据
Ant Design Vue 提供了一些方便的表单组件和 API,可以轻松地创建注册表单。以下是一个使用 Ant Design Vue 注册表单的示例:
```
<template>
<a-form ref="registerForm" :model="registerForm" :rules="registerRules">
<a-form-item label="用户名" :colon="false" :has-feedback="true" :validate-status="registerForm.usernameError">
<a-input v-model="registerForm.username" prefix-icon="user" placeholder="请输入用户名"></a-input>
<a-icon v-if="registerForm.usernameError" type="close-circle"></a-icon>
</a-form-item>
<a-form-item label="密码" :colon="false" :has-feedback="true" :validate-status="registerForm.passwordError">
<a-input v-model="registerForm.password" prefix-icon="lock" type="password" placeholder="请输入密码"></a-input>
<a-icon v-if="registerForm.passwordError" type="close-circle"></a-icon>
</a-form-item>
<a-form-item label="确认密码" :colon="false" :has-feedback="true" :validate-status="registerForm.confirmPasswordError">
<a-input v-model="registerForm.confirmPassword" prefix-icon="lock" type="password" placeholder="请再次输入密码"></a-input>
<a-icon v-if="registerForm.confirmPasswordError" type="close-circle"></a-icon>
</a-form-item>
<a-form-item>
<a-button type="primary" @click="handleSubmit">注册</a-button>
</a-form-item>
</a-form>
</template>
<script>
export default {
data() {
return {
registerForm: {
username: '',
password: '',
confirmPassword: '',
usernameError: '',
passwordError: '',
confirmPasswordError: ''
},
registerRules: {
username: [
{ required: true, message: '请输入用户名', trigger: 'blur' },
{ min: 3, max: 20, message: '用户名长度在 3 到 20 个字符之间', trigger: 'blur' }
],
password: [
{ required: true, message: '请输入密码', trigger: 'blur' },
{ min: 6, max: 20, message: '密码长度在 6 到 20 个字符之间', trigger: 'blur' }
],
confirmPassword: [
{ required: true, message: '请再次输入密码', trigger: 'blur' },
{ validator: this.validateConfirmPassword, trigger: 'blur' }
]
}
}
},
methods: {
validateConfirmPassword(rule, value, callback) {
if (value !== this.registerForm.password) {
callback(new Error('两次输入的密码不一致'))
} else {
callback()
}
},
handleSubmit() {
this.$refs.registerForm.validate(valid => {
if (valid) {
// 执行注册操作
console.log('注册成功')
}
})
}
}
}
</script>
```
在示例中,我们使用了 Ant Design Vue 的 `<a-form>`、`<a-form-item>` 和 `<a-input>` 组件来构建表单。我们定义了表单数据 `registerForm` 和表单验证规则 `registerRules`。当用户点击注册按钮时,我们调用 `handleSubmit` 方法来验证表单并执行注册操作。在提交表单前,我们可以使用 `validate` 方法来验证表单数据。如果表单验证通过,我们就可以执行注册操作。如果验证失败,`validate` 方法会返回 false,并将错误信息存储在对应的表单数据中。我们可以根据错误信息来显示错误提示。
以上是一个基本的 Ant Design Vue 注册表单示例,你可以根据自己的需求来调整表单的样式和验证规则。
阅读全文