validation - Aurelia-validation 确保依赖问题

标签 validation aurelia

我有 2 个 ensure - 验证装饰器用于 2 个字段:password 和 retypePassword。我想在填写 retypePassword 字段时检查这两个字段是否相等。

问题是,当我在这两个字段中输入完全相同的密码时,系统提示密码不匹配。

@ensure(function(elem: ValidationGroup) {
    elem
        .isNotEmpty()
        .isStrongPassword()
}) password: string;

@ensure(function(elem: ValidationGroup) {
    elem
        .isNotEmpty()
        .isStrongPassword()
        .isEqualTo(elem.subject.password, "password")
}) retypePassword: string;

我运行了调试器,当执行 .isEqualTo(elem.subject.password, "password") 行时,我看到 elem.subject.password 是未定义的。

我该如何解决?我如何测试这些密码的相等性?为什么 elem.subject.password 未定义?

恭敬地感谢您。

最佳答案

official documentation有一个关于如何通过 Fluent API 执行此操作的规范。

要使用 @ensure 装饰器来做到这一点,您可以使用类似的东西:

@ensure((elem: ValidationGroup) => {
        elem
            .isNotEmpty()
            .isStrongPassword()
            .isEqualTo((parent = elem) => { return parent.result.properties.password.latestValue }, "password")
    }) retypePassword: string;

关于validation - Aurelia-validation 确保依赖问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32185162/

相关文章:

reactjs - 我们可以将 React 组件集成到 Aurelia 项目中吗?

html - 将 aurelia-app 属性移动到另一个 html 元素?

aurelia - 安装 aurelia-materialize 桥

aurelia - 如何从 ViewModel 获取对当前路由器的引用

javascript - Aurelia:如何在绑定(bind)之前恢复到原始模型

javascript - URL 的 <input> 标签验证

php - 使用 PHP 处理验证错误的最简洁方法是什么?

Javascript 表单验证可能不起作用

javascript - 验证多组两个单选按钮

python - 要求用户提供输入,直到他们给出有效的答复