我刚刚开始接触 Ember.js,但我遇到了一些我确信我不理解的东西。
我有一个选定的对象控制器。它有一个 Ember.Object 内容,即当前选择的模型。该模型有一个属性(isDirty),基本上我希望仅当对象脏且需要保存时才启用表单上的保存按钮。
我已经成功地绑定了表单,但是保存按钮上的 isEnabledBinding 属性要么没有执行任何操作,要么我没有正确连接绑定。
我准备了一个 jsfiddle 来演示我的基本设置。
http://jsfiddle.net/blargity/fqc73/1/ http://jsfiddle.net/blargity/fqc73/1/
如何让按钮仅在 isDirty 为 true 时启用?如果所选对象控制器上的内容属性发生更改,则绑定也应该起作用。
我找到了一种无需使用现已弃用的 Ember.Button 即可完成此操作的方法。
在车把模板中:
<button {{action "save" target="controller"}} {{bindAttr disabled="view.isNotDirty"}}>Save</button>
视图中:
isNotDirty: function(){
return !this.get('controller.content.isDirty')
}.property('controller.content.isDirty').cacheable()
(对于我的 Ember 版本,Ember.Binding.not 不存在。也许我需要更新,但文档也没有显示它,所以也许它实际上已被删除。)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)