我正在尝试让一个类出现在一个特定的按钮上,该按钮带有一个基于属性绑定的把手视图。我正在做的事情就像ember.js在他们网站上的Todo应用程序(http://emberjs.com/examples/todos/)而我正试图让“Clear Completed”按钮消失财产的价值。
我有一个jsfiddle显示我要去的地方(http://jsfiddle.net/boushley/XEdNg/)。如果我在#view标签内添加一个className,它会显示正常。但是如果我添加一个clasNameBindings它就不会像我期望的那样工作。我是在做错了还是在这里打破了什么?
亚伦
答案 0 :(得分:0)
我记得我也遇到了与classNameBindings
类似的问题。
请改为:http://guides.sproutcore20.com/using_handlebars.html#binding-class-names-with-bindattr。
// Javascript for the view
App.AlertView = SC.View.extend({
priority: "p4",
isUrgent: true
});
// Template
<div {{bindAttr class="priority"}}>
Warning!
</div>
// Emits the following HTML
<div class="p4">
Warning!
</div>
如果您只想显示/隐藏按钮,请尝试绑定isVisible
属性。
isVisibleBinding: 'App.pageController.myProperty'
希望这有帮助。
答案 1 :(得分:0)
我在这里讨论了https://github.com/emberjs/ember.js/issues/322,项目的其中一位人员对此有所帮助,明确了如何在这里执行此操作https://github.com/emberjs/ember.js/issues/322#issuecomment-3332477(http://jsfiddle.net/aNZSD/ )本质上我需要创建一个扩展ButtonView的视图,并将我想要的属性放在这个新视图上。这是它应该工作的方式,我只是没有正确看到这一点。
希望这能让其他人更清楚。