在Sencha Touch 2中填充视图

时间:2013-01-17 02:56:27

标签: model-view-controller extjs sencha-touch

我正在尝试做的是弄清楚如何将变量传递给控制器​​的视图。

例如,假设我有一个登录屏幕,我想显示应用程序版本和其他一些自定义设备信息。我如何将该信息传递到视图中?

Ext.define('MyApp.view.Login', {
    extend: 'Ext.form.Panel',
    xtype: 'loginform',
    config: {
        items: [
             { 
                 xtype: 'label', 
                 cls: 'appVersion', 
                 html: 'Version #:' + versionNumber 
             }
        ]
    }
});

如果我使用tpl而不是html会有多大不同?

感谢您的帮助!

2 个答案:

答案 0 :(得分:1)

您始终可以在视图创建期间传递数据,如下所示:

var loginPanel = Ext.create('MyApp.view.Login', {
    ver : versionNumber    // any value or data you want to pass
});

为此您可能需要在视图的配置中定义ver

Ext.define('MyApp.view.Login', {
  extend: 'Ext.form.Panel',
  xtype: 'loginform',
  config: {
    ver : '',  // Initialize with empty string
    items: [
         { 
             xtype: 'label', 
             cls: 'appVersion', 
             html: 'Version #:' + versionNumber 
         }
    ]
  }
});

使用所需值创建后,您可以将其添加到任何您想要的地方

Ext.Viewport.add(loginPanel);

答案 1 :(得分:0)

您可以随时使用PhoneGap(Cordova):http://docs.phonegap.com/en/2.3.0/cordova_device_device.md.html#Device

另外,使用html或tpl很好。