检测到Aurelia验证验证错误,但没有错误消息

时间:2015-05-12 02:30:54

标签: aurelia aurelia-validation

我有一个非常简单的代码,我正在尝试验证:

<template>
    <form role="form" submit.delegate="submit()" validate.bind="validation">    
        <div class="form-group">    
            <label>Test Field</label>
            <input type="text" value.bind="testField" class="form-control" validate="Description" placeholder="What needs to be done?" />
            <button type="submit">Submit</button>
        </div>
    </form>
</template>

使用以下viewmodel

 define(["require", "exports", "../scripts/HttpClient", "aurelia-validation", "aurelia-framework"], function(require, exports, HttpClient) {
    var AureliaValidation = require('aurelia-validation').Validation;

    var MyViewModel = (function () {
        function MyViewModel(httpClient, aureliaValidation, isReadyCallback) {
            this.httpClient = httpClient;
            var self = this;

            self.setupValidation(aureliaValidation);
        }
        MyViewModel.prototype.activate = function (params, queryString, routeConfig) {
        };

        MyViewModel.prototype.setupValidation = function (validation) {
            this.testField = "";
            this.validation = validation.on(this).ensure('testField');

            //validation
            //    .on(this.serviceMetadata.ServiceData[0])
            //    .ensure('Value');
            this.validation = this.validation.notEmpty().maxLength(3);
        };

        MyViewModel.prototype.submit = function () {
            debugger;
            if (this.validation.checkAll()) {
                //Do Something
            }
            return null;
        };
        MyViewModel.inject = [HttpClient, AureliaValidation];
        return MyViewModel;
    })();


    return MyViewModel;
});

现在我在大多数情况下都使用它,并且验证在提交检查时显示为false,文本框轮廓颜色更改等,但是它不会将验证错误消息注入DOM。也没有脚本错误消息,我该如何排除故障呢?

是的,我可以在validationProperties中看到验证消息,但它们不会写入UI。

1 个答案:

答案 0 :(得分:2)

如果您的浏览器允许,请在源代码中找到JSPM包并放置a breakpoint here,它是查看策略查找标签以附加错误消息的点。如果您公开使用此代码,我们很乐意为您服务。

另外,您使用的是什么版本的aurelia / aurelia-validation?

最后,您是否在发布之前修改了样本?

`<input value.bind="testField" validate="Description" />`

这两个属性是矛盾的。它将值绑定到testField,但随后您使用validate属性显式显示属性的验证消息&#34;描述&#34;。