首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用Aurelia验证验证列表

使用Aurelia验证验证列表
EN

Stack Overflow用户
提问于 2017-10-09 10:51:51
回答 1查看 849关注 0票数 2

我正在使用Aurelia验证来验证我的Aurelia项目中的项目。目前,我正试图验证数组是否至少包含一个项。我设置了以下验证规则:

代码语言:javascript
复制
ValidationRules
    .ensure((x: Appraisal) => x.objectives)
    .minItems(1)
    .withMessage("You must add at least one objective before submitting.")
    .on(Appraisal);

我有以下html:

代码语言:javascript
复制
<div class="au-animate" repeat.for="objective of appraisal.objectives">
    <compose view-model="./appraisal-objective-item" model.bind="{ objective: objective, appraisal: appraisal }" />
</div>

目前,当我在验证控制器上调用validate时,result.valid始终是真的。

我需要在html中做些什么,这样验证控制器才能“捕获”验证?(也就是说,通常使用value.bind="firstName & validate"作为值字段。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-10-10 07:39:32

通过defaut,aurelia验证只验证绑定的属性。如果要验证整个实体,即使某些属性没有用于数据绑定,也必须使用控制器的addObject(object, rules?)方法。

就你而言:

代码语言:javascript
复制
this.appraisal = new Appraisal();
this.validationController.addObject(this.appraisal);

如果需要,不要忘记调用removeObject方法。(例如,如果您更改了appraisal属性的值。)

您将在这里找到有关实体验证的更多详细信息:http://aurelia.io/hub.html#/doc/article/aurelia/validation/latest/validation-basics/9

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46644688

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档