Aurelia-validation 确保依赖问题
Aurelia-validation ensure dependency issue
我有 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;
我有 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;