验证在附加时初始化时未显示Aurelia验证错误

时间:2016-01-23 22:29:47

标签: aurelia aurelia-validation

我希望在显示视图时显示无效的输入字段。

我在一个单独的类(UserValidation)中设置了验证规则,其中包含一个函数(initValidatorOn)。

export class UserValidation {

    public _validation: Validation;

    constructor(validation: Validation) {
        this._validation = validation;
    }

    initValidatorOn(user: UserDto): ValidationGroup {
           return this._validation.on(user, null)
                .ensure('name').isNotEmpty();
    }
}

一切都适用于此设置。

export class User {
    public validationGroup : ValidationGroup;
    public userValidation : UserValidation;
    public user : UserDto;
    constructor(uv: UserValidation) {
        this.userValidation = uv;
        //this code works here and in activate method
        this.validationGroup = this.userValidation.initValidatorOn(this.user);
    }

    attached() {
        this.validationGroup.validate();
    }
}

正如我之前所说,上述作品。但有时我需要验证的对象在构造函数或激活函数中不可用,因此我需要在附加函数中初始化验证。当我这样做时,我的视图不再显示验证错误,直到我更新输入中的值。 所以,这不起作用

attached() {
    this.validationGroup = this.userValidation.initValidatorOn(this.user);
    //no validation errors displayed on the view
    this.validationGroup.validate();
}

当我在附加函数中初始化validationGroup时调用validate后,有人可以解释为什么错误没有显示在视图上吗? 谢谢。

0 个答案:

没有答案