Ember.Router에서 만든 컨트롤러가있어서 테이블이 채워집니다.이벤트에서 컬렉션의 바인딩 된 클래스를 업데이트하는 방법
템플릿 :
{{#each key in controller}}
{{#view App.TestView contentBinding="key"}}
<tr {{bindAttr class="view.isSelected"}} {{action selectKey this on="click" target="view" }}>
<td>{{key.id}}</td>
<td><button type="button" class="btn btn-danger" {{action removeKey on="click" target="view"}}>Remove</button></td>
</tr>
{{/view}}
{{/each}}
뒤에 코드 :
App.TestView = Em.View.extend({
removeKey: function() {
var key = this.get('content');
this.bindingContext.removeObject(key);
return false;
},
selectKey: function (event) {
this.set('theClass', 'warning');
},
theClass: 'selectable',
isSelected: function() {
return this.get('theClass');
}.property('theClass')
});
내가 '경고'로 클래스를 변경하는 onclick 이벤트를 기대하고있어, 그리고 컬렉션의 행 수 (css 클래스에 따라) 노란색으로 강조 표시되어 있지만 이는 발생하지 않습니다. isSelected 속성이 DOM을 업데이트하지 않는 것 같습니다. 왜 그렇게하지 않는지 알 수 없습니다. 여기
Jsfiddle : http://jsfiddle.net/EsF4R/114/
대신
tr
요소를 클릭하면 jsfiddle을 게시 할 수 있습니까? – Ryan좋아, [여기 있네] (http://jsfiddle.net/EsF4R/114/) – Deif