fix(frontend): 优化用户表单密码输入框,使用 masked 和 disable-autofill 属性简化实现

This commit is contained in:
fawney19
2026-03-12 01:46:41 +08:00
parent 6e51a3f45d
commit 8b49a3d264

View File

@@ -82,20 +82,15 @@
<Input <Input
:id="`pwd-${formNonce}`" :id="`pwd-${formNonce}`"
v-model="form.password" v-model="form.password"
:type="passwordFocused ? 'password' : 'text'" type="text"
:masked="passwordFocused || form.password.length > 0"
autocomplete="new-password" autocomplete="new-password"
data-form-type="other" disable-autofill
data-lpignore="true"
:name="`field-${formNonce}`" :name="`field-${formNonce}`"
:required="!isEditMode" :required="!isEditMode"
minlength="6" minlength="6"
:placeholder="isEditMode ? '留空保持原密码' : getPasswordPolicyPlaceholder(passwordPolicyLevel)" :placeholder="isEditMode ? '留空保持原密码' : getPasswordPolicyPlaceholder(passwordPolicyLevel)"
:class="[ :class="`h-10${!passwordFocused && form.password.length === 0 ? ' text-transparent' : ''}${passwordError ? ' border-destructive' : ''}`"
!passwordFocused && form.password.length === 0
? 'h-10 text-transparent'
: 'h-10',
passwordError ? 'border-destructive' : '',
]"
@focus="passwordFocused = true" @focus="passwordFocused = true"
@blur="passwordFocused = form.password.length > 0" @blur="passwordFocused = form.password.length > 0"
/> />