账号密码登录
微信安全登录
微信扫描二维码登录

登录后绑定QQ、微信即可实现信息互通

手机验证码登录
找回密码返回
邮箱找回 手机找回
注册账号返回
其他登录方式
分享
  • 收藏
    X
    vue.js+element UI,输入框的rules validator中检测用户名是否已经被使用,没有效果?
    18
    0
          userRules: {
            username: [
              { required: true, message: '请输入新的用户名称', trigger: 'blur' },
              { min: 1, max: 20, message: '用户名的长度不得超过20个字符', trigger: 'blur' },
              { validator: validateName, trigger: 'blur' }
            ],
            password: [
              { required: true, message: '请设置登录密码', trigger: 'blur' },
              { min: 6, max: 15, message: '长度在 6 到 15 个字符', trigger: 'blur' }
            ],
            confirmPassword: [
              { required: true, message: '请确认登录密码', trigger: 'blur' },
              { min: 6, max: 15, message: '长度在 6 到 15 个字符', trigger: 'blur' },
              { validator: validatePass, trigger: 'blur' }
            ],

    console日志已经打印'该名称已经被使用',但是输入框没有任何反应:
    是validator里面不能用后端api调用吗?

        var validateName = (rule, value, callback) => {
          console.log('validateName,value:', value)
          if (value === '') {
            callback(new Error('请输入新的用户名称'));
          } else {
            apiUserNameExists(value)
              .then(response => {
                console.log('validateName,response:', response)
                if (response.data.exists) {
                  console.log('该名称已经被使用')
                  callback(new Error('该名称已经被使用!'));
                }
              })
              .catch((err) => {
                console.log(err)
              })
            callback();
          }
        };
    0
    打赏
    收藏
    点击回答
        全部回答
    • 0
    更多回答
    扫一扫访问手机版
    • 回到顶部
    • 回到顶部