template
<el-form
ref="form"
:model="ruleForm"
:rules="rules"
label-width="120px"
class="demo-ruleForm"
>
<el-form-item label="用戶名" prop="username">
<el-input v-model="ruleFormRef.username.value" placeholder="用戶名/手機號/郵箱" clearable></el-input>
</el-form-item>
<el-form-item label="密碼" prop="password">
<el-input v-model="ruleFormRef.password.value" show-password placeholder="密碼" clearable></el-input>
</el-form-item>
</el-form>
<el-button type="primary" @click="login">登錄</el-button>
<el-button type="text" @click="goRegister">去注冊</el-button>
ts
const ruleForm = reactive({
username: '',
password: '',
})
const ruleFormRef = toRefs(ruleForm)
const rules = reactive({
username: [
{
required: true,
message: '請輸入用戶名/手機號/郵箱',
trigger: 'change',
},],
password: [
{
required: true,
message: '請輸入密碼',
trigger: 'change',
},],
})
const form = ref(null);
const login = () => {
const myForm = form.value as any;
myForm.validate((valid: boolean) => {
if (valid) {
loginSubmit(ruleForm)
}
})
}