首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >成员-在助手中使用类绑定的问题

成员-在助手中使用类绑定的问题
EN

Stack Overflow用户
提问于 2015-05-14 09:09:11
回答 2查看 180关注 0票数 1

我们升级为Ember 1.11.1和Ember-validations 2.0.0-alpha.3 3.

控制器

代码语言:javascript
复制
export default Ember.Controller.extend(EmberValidations.Mixin, { 
  canValidate: true,
  validationModel: Ember.computed.alias("model"),
  validations: {
   'validationModel.name': {
      presence: { 'if': 'canValidate', message: 'Please enter a name'},
   },
  },
}

模板

代码语言:javascript
复制
{{log "error value" errors.validationModel.name}}
{{input classBinding="errors.validationModel.name:app_input_box_error:app_input_box" placeholder="Document Name" value=model.name}}

有了上面的模板代码之后,验证就会像预期的那样工作,并根据是否存在验证错误而将输入的类移出。但是,当{{log}行被移除时,类绑定似乎丢失,并且输入类不再适当更新。请对原因/修复有任何建议吗?

注释类绑定(例如在标准div中)继续正常工作

EN

回答 2

Stack Overflow用户

发布于 2015-05-14 10:13:05

不妨试试这个:

代码语言:javascript
复制
{{input classBinding="errors.validationModel.name:app_input_box_error:app_input_box" placeholder="Document Name" value=validationModel.name}}
票数 1
EN

Stack Overflow用户

发布于 2015-05-19 21:19:59

我在文档中看到的不是classBinding,而是classNameBindings,我不确定沿途是否有什么不推荐的东西。

我怀疑classBinding没有触发要更新的属性,我似乎回忆起了一些关于成员验证的问题,但有时并不总是触发。看看https://github.com/aceofspades/ember-validations/commit/85ecaa348f2a1ccfb52f614037c4b4dbf77bceb4,看看这是否有帮助。

从更高的层次来看,我认为您会经常重复这种模式,根据错误与特定字段的关联添加一个类名。就我个人而言,我可能会花一些时间寻找或构建一个输入组件,该组件处理注释,您可以在其中拥有一个fieldName属性,并让它查看适当的errors.validation.${fieldName}。在JS中进行编码可能会有所帮助,或者至少可以使调试变得更容易。

不精确地与单个字段相关,但也可能对您有所帮助,特别是迁移到HTMLBars语法,即

代码语言:javascript
复制
{{input class="{{if errors.validationModel.name 'app_input_box_error' 'app_input_box'}}"}}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30233400

复制
相关文章

相似问题

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