2015-04-02 3 views
0
App.FolderListItemView = Ember.View.extend({ 
     templateName: 'folder-list-item', 
     tagName: 'li', 
     classNames: ['folder'], 
     classNameBindings: ['opened'], 
     opened: false, 
     click: function (e) { 
       this.set('opened', !this.get('opened')); 
     } 
}); 



<script type="text/x-handlebars" data-template-name="folder-list-item"> 
     <i {{bind-attr class="opened:icon-content-plus:icon-content-minus"}}></i> 
     ... 
</script> 

Я хотел бы изменить значок (плюс/минус) в соответствии со значением «открыт» для просмотра.Как можно использовать свойства свойств в шаблоне?

Приложение bind-attr не работает. Как мне с этим бороться?

+0

'opened' должны быть в вашем cotnroller. – albertjan

+0

'open' только для UI, поэтому я бы не хотел связывать его с реальной моделью. – mugic

ответ

1

Вы должны использовать view.opened свойство в шаблоне

<script type="text/x-handlebars" data-template-name="folder-list-item"> 
     <i {{bind-attr class="view.opened:icon-content-plus:icon-content-minus"}}></i> 
     ... 
</script> 
+0

Спасибо Рами, я тебя люблю – mugic

Смежные вопросы