1

我遇到了一个关于简单密码更改表单的问题,我想确保新密码与旧密码不同

我已经尝试直接按照文档实现它:

import { ref, withParams } from 'vuelidate/lib/validators'
export const differsFrom = equalTo => withParams(
  {type: 'differsFrom', eq: equalTo},
  function (value, parentVm) {
    return value !== ref(equalTo, this, parentVm)
  }
)

现在,从 vuelidate 导入正确的项目并不像文档说明的那么容易。

4

2 回答 2

3

使用not

import { sameAs, not } from 'vuelidate/lib/validators'

export default {
  data () {
    return {
      password: '',
      oldPassword: ''
    }
  },
  validations: {
    password: {
      not(sameAs('oldPassword'))
    }
  }
}
于 2019-02-21T10:21:41.897 回答
0

提示:

withParams不是那里的功能,必须像这样导入它:

import { withParams } from 'vuelidate/lib/params'

我找不到如何ref正确导入......它一直说它不是一个功能。

现在,not验证器的实现同样有效:

import { withParams } from 'vuelidate/lib/params'
export const not = validator => {
  return withParams({type: 'not'}, (...args) => !validator(...args))
}
于 2018-04-11T16:11:50.667 回答