2013-05-27 17 views
6

Bir denetleyicim var ve bir sonraki Görünüm'e basit bir dize değeri iletmek istiyorum.Verileri denetleyiciden başka bir görünüme geçirme ve sencha değerinde bir etiket değeri ayarlama

Bunun için, bu gibi görünümü oluşturuyorum.

 
    var nextView= Ext.create('MyApp.view.NextView',{ 
     content: 'value' 
    }); 
    Ext.Viewport.add(nextView); 
    Ext.Viewport.animateActiveItem(nextView,{type: 'slide', direction: 'left'}); 

nexTView günü, bir etiket var ve ben denetleyicisinden geçirerek değere etiketin HTML özelliğini ayarlamak istiyorum. yani. 'Değer'.

Benim NextView buna benzer.

 
Ext.define('MyApp.view.NextView', { 
    extend: 'Ext.form.Panel', 
    config: { 
     content: 'null', 
     items: [ 
      { 
       xtype: 'label', 
       html: 'value' 
      } 
     ] 
    } 
}); 

Buradan devam etmek değil nasıl eminim. NextView bir form olarak olamaz. Bu durumda sadece bir dize değerini geçmem gerekiyor. Bunu başarmanın en iyi yolu nedir? Böyle yapılandırma verilerine erişmek için

cevap

8

Kullanım initialize yöntemi:

Ext.define('MyApp.view.NextView', { 
    extend: 'Ext.form.Panel', 
    config: { 
     content: 'null', 
     items: [ 
      { 
       xtype: 'label', 
       html: 'value' 
      } 
     ] 
    }, 
    initialize : function(){ 
     this.callParent(); 
     var val = this.config.content; 
     this.down('label').setHtml(val); 
    } 
}); 

PSdown fonksiyonu Ben soru yanıtlandı biliyoruz

+0

Teşekkürler. Bu işe yarıyor :) –

4

favori seçici çekinmeden kullanabilirsiniz. Ancak, denetleyiciden veriye (görünümün yapıcısını kullanarak) veri aktarmak için oldukça doğal bir yol buldum. Bunu web masaüstümü uygulamasında uygulamamda kullanıyorum. olarak takip

kontrol, görüş kurucusuna veri geçirmek:

loiTab = Ext.create('Iip.view.giips.admission.DetailedLoiTab', {closable: true, selectedLoiData: selected[0].data}); 

görünümünde, bir kurucu dönüşünü takip edilmiştir:

constructor: function(selectedLoiData) { 
    Ext.applyIf(this, selectedLoiData); 
    this.callParent(); 
}, 

Aşağıdaki yöntem, aynı yaşayan kurucu olarak dosya. SelectedLoiData'ya, kurucunun izlediği şekilde herhangi bir yerden erişebilirsiniz:

initComponent: function(){ 
    console.log(this.selectedLoiData); 
}