【问题标题】:Aurelia ValidationRules is not triggeringAurelia ValidationRules 未触发
【发布时间】:2016-10-14 22:22:36
【问题描述】:

我是 Aurelia Js 的新手,我需要验证登录表单(必需和 emial)属性。这里我使用了 aurelia-validation 插件。我的代码如下, login.js

import {Router} from 'aurelia-router';
import {
    ValidationRules
} from 'aurelia-validation';

export class login{
    static inject() { return [Router]; }
    attached(){
    }
}
ValidationRules
    .ensure('login.emial').required()
    .withMessage(`\${$displayName} cannot be blank.`);
 `

我不知道如何触发它并显示错误消息。

ma​​in.js

    import $ from 'jquery';
export function configure(aurelia) {
aurelia.use
    .defaultBindingLanguage()
    .defaultResources()
    .developmentLogging()
    .router()
    .history()
    .eventAggregator()
    .plugin("aurelia-materialize-css")
    .plugin('aurelia-validation')
;
aurelia.start().then(() => aurelia.setRoot());

} HTML

<input id="email" type="email" class="validate" value.bind="login.emial">

【问题讨论】:

    标签: javascript aurelia


    【解决方案1】:

    login.js

    import {ValidationRules} from 'aurelia-validation';
    
    export class Login{
      email = '';
    }
    
    ValidationRules
      .ensure('email').required();
    

    登录.html

    <template>
      <input value.bind="email & validate">
    </template>
    

    【讨论】:

      【解决方案2】:

      从上面的 Jeremy Danyow 答案中,您必须并且应该在输入字段的顶部提供 form-group 类,如下面的代码。那么只有验证才会起作用,否则它将不起作用。

      <div class="form-group">
            <input value.bind="email & validate">
       </div>
      

      【讨论】:

        猜你喜欢
        • 2020-05-15
        • 1970-01-01
        • 2019-03-12
        • 1970-01-01
        • 2016-07-03
        • 1970-01-01
        • 1970-01-01
        • 2016-12-21
        • 1970-01-01
        相关资源
        最近更新 更多