Нужна помощь для Extjs Dataview - PullRequest
0 голосов
/ 04 ноября 2011

Я пытаюсь использовать ExtJS dataview (TPL)

но это не работает хорошо. и я не могу найти ничего плохого ..

Кто-нибудь знает, что я делаю ошибку?

Код:

var testPanel = new Ext.Panel({
    border: true,
    height: 400,
    layout : 'fit',
    items : [
        {html : "Print me"}, // ! It print OK
        new Ext.DataView({ // It does not show up!
        store: this.store,
        itemSelector: 'div.showme',
        autoHeight: true,
        tpl : new Ext.XTemplate(
        '<div>HELLO</div>',
        '<tpl for=".">',
            '<div class="showme">',
            '<div>{myData}</div>',
            '</div>',
        '</tpl>'
        ),
        emptyText : 'No Data' // even not print this!
    })],
    store : new Ext.data.JsonStore({
        url : '<?php echo url_for('test.php'); ?>', // It bring data ok.
        fields : [
            {name : 'myData'}
        ]
    }),
    redraw : function(para){
        this.store.load({
        params : {
            para : para
        }
        })
    }
});

Спасибо!

1 Ответ

3 голосов
/ 04 ноября 2011

нет необходимости помещать магазин на панель, вы должны поместить магазин непосредственно в виде данных.В этой строке store: this.store, при создании объекта this.store будет неопределенным.

new Ext.DataView({ // It does not show up!
    store: new Ext.data.JsonStore({
        url: '<?php echo url_for('
        test.php '); ?>', // It bring data ok.
        fields: [{
            name: 'myData'
        }]
    }),
    itemSelector: 'div.showme',
    autoHeight: true,
    tpl: new Ext.XTemplate(
        '<div>HELLO</div>',
        '<tpl for=".">',
        '<div class="showme">',
        '<div>{myData}</div>',
        '</div>',
        '</tpl>'),
    emptyText: 'No Data' // even not print this!
});
...