2012-02-14 14 views
17

Bu muhtemelen kolay ötesinde, ama ana görüş özelliklerine erişmek için anlamaya zor anlar yaşıyorum: this.get('parentView')Ember'de ana sayfanın mülkiyeti nasıl edinilir?

foo değerini almak için:

App.ParentView = Ember.View.extend({ 
    foo: 'bar', 

    child_view: Ember.View.extend({ 

    init: function(){ 
     // get the value of App.ParentView.foo 
     // ??? 
    } 
    }) 

}); 
+0

erkekte unutmayınız yazabilir böylece get() yöntem şimdi, yolları destekliyor olmasıdır Ebeveyn görüşüne erişen durumlar, kod kokusunun bir işaretidir. Ancak burada ayrıntıları bilmeden daha fazlasını söylemek zor. –

cevap

30

görünüm elde etmek için

+1

Üst görünümde gidonlara erişmek istediğiniz bir durum söz konusu olduğunda, {{view.parentView.foo}} 'işlevini kullanabilirsiniz. Yani: {{#viewWrapper}}

{{view.parentView.foo}}
{{/ view}} ' – chuckg

+2

Yeni başlayanlar başlıyor! Yukarıdaki kod App.parentView wich yanıltıcı olduğunu söylüyor. Görüşünüze verdiğiniz addan bağımsız olarak her zaman almalısınız ("parentView"). – Nico

+0

Bunun için teşekkürler. Sadece bana çok zaman kazandırdı. – DexterW

3

Tom doğrudur. Ayrıca bu tür durumlar yararlı olabilir özel contentView özelliği, Bunu göstermek ve aynı zamanda göstermek için bir JS Fiddle oluşturuldu: yerine get zincirlerinin http://jsfiddle.net/rSLQK/2/ ayrıca getPath yöntemi kullanabilirsiniz 1.0.pre önce Ember yılında

4

,(), daha özlü (ve genel olarak daha güvenli) kodu için:

this.getPath("parentView.foo"); 

ne Kor 1.0.pre içinde serin Eğer

this.get("parentView.foo"); 
İlgili konular