2011-06-08 45 views
0

Sencha Touch的新手,在黑暗中挣扎。在我的控制,我定义一个变量这样的行动中:Sencha Touch MVC:如何访问视图中的数据?

this.map = this.render({ 
    xtype: 'contact-map', 
    data: this.person.data, 
    listeners: { 
     deactivate: function(map) { 
      map.destroy(); 
     } 
    } 
}); 

我的问题是,如何从视图'contact-map'访问data元素(this.person.data)?我知道如何通过模板tpl<p>{foo}</p>这样的元素,但我如何在代码中这样做?

回答

3

数据成为您创建的视图对象的属性。

所以在你的initComponent方法中,你可以使用this指针来引用它,即this.data。

视图的事件处理程序通常会将视图作为第一个参数传递给回调函数,因此您可以使用该函数对其进行访问。在你的停用处理程序中,你可以使用map.data。

+0

感谢您的信息。那么,如果我有数据的项目,比如foo和bar,我可以通过this.data.get('foo')在视图中访问它们吗? – 2011-06-09 00:59:41

+0

@Buffalo如果它是一个Ext.Model是的。否则,只需data.foo或data.bar。 – 2011-06-09 01:02:13

+0

完美,谢谢! – 2011-06-09 01:10:49