2012-06-14 13 views
7

Henüz bir uygulama oluşturmadım, ancak bind-attr ile ilgili bilgilerle karıştırıldım.Ember.js'de bind-attr nasıl çalışır?

<div id="logo"> 
    <img {{bind-attr =logoUrl}} alt="Logo" /> 
</div> 

üretmek için::

<div id="logo"> 
    <img src="http://www.mycorp.com/images/logo.png" alt="Logo" /> 
</div> 

Ve Benzer:

App.AlertView = Ember.View.extend({ 
    priority: "p4", 
    isUrgent: true 
}); 

Bu şablonla

App.LogoView = Ember.View.extend({ 
    logoUrl: 'http://www.mycorp.com/images/logo.png' 
}); 

: Bu gibi bir şey yapabileceğini söylüyor Bir şablon olarak:

<div {{bind-attr =priority}}> 
    Warning! 
</div> 

üretmek için:

<div class="p4"> 
    Warning! 
</div> 

Nasıl Kor ilk örnekteki src nitelik ve ikinci örnekte bir class sıfatı olduğunu biliyor? Burada bir şey kaçırmadığım sürece, bu gerçekten mümkün gibi görünmüyor.

cevap

14

Belgeler yanlış görünüyor. Eğer ince işleri arayacakları olarak kod çalıştırma

Uncaught Error: Parse error on line 4: 
... <img {{bind-attr =logoUrl}} alt="Lo 
-----------------------^ 
Expecting 'CLOSE', 'STRING', 'INTEGER', 'BOOLEAN', 'ID', 'SEP' 

: docs listelendiği şekilde kod çalıştırma, ben şu hatayı alıyorum. Söz konusu niteliğini belirtmeniz gerekir:

<div id="logo"> 
    <img {{bind-attr src=logoUrl}} alt="Logo"> 
</div> 

İşte working example var (öznitelik adı kaldırıp konsolda hata arayın).

+0

OH! evet bu çok daha anlamlı olur. Belge hatalarını kime bildirdiğimi merak ediyorum. – brad

+0

[GitHub sorunları sayfası] 'nı deneyebilirsiniz (https://github.com/emberjs/ember.js/issues). –

+2

Kaynak belgeler zaten giderilmiştir. Web sitesi henüz güncellenmemiştir. –