【问题标题】:Where should a new XTemplate be defined using Sencha Touch 2?应该在哪里使用 Sencha Touch 2 定义新的 XTemplate?
【发布时间】:2012-03-13 21:20:28
【问题描述】:

我正在使用 ST2 构建我的第一个应用程序,首先构建Getting Started with Sencha Touch 2 中概述的应用程序,然后尝试修改它以满足我自己的需求。演示应用程序有一个 DataView 列表,可以点击其中的每个元素以显示相应的详细信息页面。

在该应用程序中,详细信息页面上的内容是动态拉入的,不需要太多样式或排列。但是,对于我自己的详细信息页面,我需要使用模板或 XTemplate 来设置我的数据的样式和位置。

我似乎不知道应该在哪里定义模板(即 var myTpl = new Ext.XTemplate(...))——在控制器中,在模型中?

非常感谢您提供这方面的任何指导。

【问题讨论】:

    标签: sencha-touch-2


    【解决方案1】:

    这取决于您想在哪里使用 XTemplate。如果它只在一个视图中使用,那么只需在定义视图时定义 xtemplate。

    {
       xtype : 'view',
       tpl : new XTemplate('<div></div>...')
    }
    

    如果您打算在多个视图中使用它,那么您可以创建一个仅用于共享模板的类。

    Ext.define('MyApp.util.SharedTemplates', {
        statics : {
             sharedTemplate1 : new XTemplate('<div></div>')
        }
    
    });
    

    这样模板只编译一次并且可以重复使用。

    【讨论】:

    • 使用第二种方法,例如,您如何在列表 itemTpl 中引用您的 SharedTemplate1?
    • itemTpl : MyApp.util.SharedTemplates.sharedTemplate1
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多