PasswordInput 密码输入框

引入

通过以下方式来全局注册组件,更多注册方式请参考组件注册

基础用法

搭配数字键盘组件来实现密码输入功能。

  1. <van-password-input
  2. :value="value"
  3. :focused="showKeyboard"
  4. @focus="showKeyboard = true"
  5. />
  6. <!-- 数字键盘 -->
  7. <van-number-keyboard
  8. v-model="value"
  9. :show="showKeyboard"
  10. />
  1. import { ref } from 'vue';
  2. export default {
  3. setup() {
  4. const value = ref('123');
  5. const showKeyboard = ref(true);
  6. return {
  7. value,
  8. showKeyboard,
  9. };
  10. },
  11. };

格子间距

通过 gutter 属性来设置格子之间的间距。

  1. <van-password-input
  2. :value="value"
  3. :gutter="10"
  4. :focused="showKeyboard"
  5. @focus="showKeyboard = true"
  6. />

明文展示

mask 设置为 false 可以明文展示输入的内容,适用于短信验证码等场景。

  1. <van-password-input
  2. :value="value"
  3. :mask="false"
  4. :focused="showKeyboard"
  5. />
  1. import { ref, watch } from 'vue';
  2. export default {
  3. setup() {
  4. const value = ref('123');
  5. const errorInfo = ref('');
  6. const showKeyboard = ref(true);
  7. watch(value, (newVal) => {
  8. if (newVal.length === 6 && newVal !== '123456') {
  9. errorInfo.value = '密码错误';
  10. } else {
  11. errorInfo.value = '';
  12. }
  13. });
  14. return {
  15. value,
  16. errorInfo,
  17. showKeyboard,
  18. };
  19. },
  20. };

Props

Events

组件导出以下类型定义:

    样式变量

    组件提供了下列 CSS 变量,可用于自定义样式,使用方法请参考 。