在自定义组件中动态加载数据

时间:2014-01-20 14:34:51

标签: extjs sencha-touch

Sencha的新手,如果我走错了,请原谅我。

我有一个场景,我们已经创建了自定义窗口小部件组件'tableComponent',并包含在我的应用中。 Custom Widget与静态数据完美配合,但在使用xtype加载不同视图后必须使其动态化。

附加代码:

自定义窗口小部件代码

Ext.define('tableComponent', {
    extend: 'Ext.Container',
    xtype: 'tableComponent',
    config: {
        tpl: Ext.create('Ext.XTemplate',
            '<tpl for=".">',
                '<table>',
                    '<tpl for="rows">',
                    '<tr>',
                        '<tpl for="columns">',
                        '<td>{html}</td>',
                        '</tpl>',
                    '</tr>',
                    '</tpl>',
                '</table>',
            '</tpl>'
        ),
        data: [
               {

                   rows: [
                       {
                           columns: [
                               { html: 'column 1' },
                               { html: 'column 2' },
                               { html: 'column 3' }
                           ]
                       },
                       {
                           columns: [
                               { html: 'column 1' },
                               { html: 'column 2' },
                               { html: 'column 3' }
                           ]
                       }
                   ]
               },
               {

                   rows: [
                       {
                           columns: [
                               { html: 'column 1' },
                               { html: 'column 2' },
                               { html: 'column 3' }
                           ]
                       }
                   ]
               }
           ]
    }
});

在items:

项下的另一个视图(即:viewMain)中添加
{
    xtype : 'tableComponent',
    height : '100%',
    width : '100%'  
}

在完全加载上述View时,想要为特定的xtype组件动态设置数据。

先谢谢。

1 个答案:

答案 0 :(得分:2)

为了动态修改容器的data,您可以使用方法update()。在sencha docs

中概述

此外,要查找component,您可以使用up() down()遍历层次结构,或使用Ext.ComponentQuery.query()按{{{ 1}}或xtype

这是一段代码片段

itemId

I added working fiddle to demonstrate