配置aurelia验证

doe*_*eck 4 aurelia aurelia-validation

我正在尝试配置Aurelia验证(版本0.2.6)以将所有验证消息附加到<input>元素而不是标签.

我的main.js看起来像这样:

export function configure(aurelia) {
aurelia.use
  .standardConfiguration()
  .developmentLogging()
  .plugin('aurelia-validation', (config) => { config.useLocale('de-DE').useViewStrategy(ValidateCustomAttributeViewStrategy.TWBootstrapAppendToInput); });

aurelia.start().then(a => a.setRoot('app', document.body));
}
Run Code Online (Sandbox Code Playgroud)

我总是得到以下错误消息:

未处理的承诺拒绝ReferenceError:未定义ValidateCustomAttributeViewStrategy

我究竟做错了什么?

hco*_*bda 8

看起来这个刚刚改变了.因此,截至2015年12月10日,这有效:

import { TWBootstrapViewStrategy } from 'aurelia-validation';
...

export function configure(aurelia) {
    aurelia.use
        .plugin('aurelia-validation', (config) => config
           .useViewStrategy(TWBootstrapViewStrategy.AppendToInput))
        ...
}
Run Code Online (Sandbox Code Playgroud)

顺便说一下,d.ts目前缺少策略定义,所以如果你使用TypeScript,你必须将策略强制转换为any:

import { ValidationConfig, TWBootstrapViewStrategy } from 'aurelia-validation';
...

export function configure(aurelia: Aurelia) {
    aurelia.use
        .plugin('aurelia-validation', (config: ValidationConfig) => config
            .useViewStrategy((<any>TWBootstrapViewStrategy).AppendToInput))
        ...
}
Run Code Online (Sandbox Code Playgroud)


小智 3

添加 import {ValidateCustomAttributeViewStrategy} from 'aurelia-validation'; 到文件顶部