2013-07-24 2 views
5

Как связать атрибут и связать с ним какой-то простой текст?Ember.js bindAttr plus plaintext

Например:

<span {{bindAttr title="updates 'revisions'"}}>{{updates}} revisions</span> 

Для производства:

<span title="4 revisions">4 revisions</span> 

Есть ли способ сделать это без написания нового помощника? Я чувствую, что я должен написать помощник для каждой простой вещи с рулями ...

ответ

1

Вы можете определить это следующим образом:

<span {{bindAttr title="updates :revisions"}}>{{updates}} revisions</span> 

Вы можете прочитать больше об этом in the docs.

+0

Я думаю, что может работать только для булевы и имен классов , Я попробовал это с свойством 'for' для метки '{{bindAttr for =" id: appendThis "}}', и ничего не было показано в свойстве 'for'. Когда я делаю '{{bindAttr for = id}}', свойство for устанавливается в свойство 'id' контроллера. – leejt489

2

Вы можете добавить к вам модель нового вычисляемого поля

App.Revisions = Em.Object.extend({ 
    updates:5, 
    updatesTitle:function(){ 
    return this.get('updates') + ' revisions'; 
    }.property('updates'), 
}); 

В изменении Рули для:

<span {{bindAttr title="updatesTitle"}}>{{updates}} revisions</span> 

или

<span {{bindAttr title="updatesTitle"}}>{{updatesTitle}}</span> 
Смежные вопросы