सेन्चा टच: टीपीएल से कॉन्फ़िगर कैसे प्राप्त करें?

सेन्चा टच के साथ, मैंने अपने मोबाइल एप्लिकेशन के लिए एक टेबल प्रदर्शित करने के लिए एक घटक बनाया।

मेरा घटक कोड यहां दिया गया है:

Ext.define('MyApp.components.table.Table', {
    extend: 'Ext.Container',
    xtype: 'table',

    config: {
    cls: 'myTableCSS',
    scrollable: 'vertical',
    tpl: Ext.create('Ext.XTemplate',
        '',
            '<table>',
                '<tr>',
                    '',
                        '<th>{html}</th>',
                    '',
                '</tr>',
                '',
                    '<tr class="{[this.config.id]}" >',
                        '',
                                '<td>{html}</td>',
                        '',
                    '</tr>',
                '',
            '</table>',
        ''
    }
});

मेरा दृश्य कार्यान्वयन यहां दिया गया है:

xtype: 'table',
id: 'myRedTable',
data: [
    {
        headers: [
            { html: 'firstname' },
            { html: 'lastname' },
            { html: 'age' }
        ],
        rows: [
            {
                columns: [
                    { html: 'John' },
                    { html: 'Smith' },
                    { html: '38' },
                ]
            }
        ]
    }
],

मेरे घटक में, जब मैं {[this.config.id]} का उपयोग करता हूं, तो मैं अपने दृश्य कार्यान्वयन की आईडी प्राप्त करना चाहता हूं (यानी myRedTable ) लेकिन यह नहीं करता है काम।

क्या यह हासिल करने के लिए कोई समाधान है?

1

1 उत्तर

ऐसा लगता है कि आपने इनलाइन मनमाना कोड के लिए सिंटैक्स सही ढंग से लिखा है, लेकिन दायरे में कोई समस्या है। यह Ext.XTemplate के उदाहरण को संदर्भित करता है, तालिका दृश्य नहीं।

आपको इसके बजाय अपने टेबल इंस्टेंस का संदर्भ प्राप्त करने का एक और तरीका आज़माएं, उदाहरण के लिए, अपनी तालिका की परिभाषा फ़ाइल में:

initialize: function(){
    var me = this;
    me.setTpl('Ext.XTemplate',
       //blah blah ...
       //now you can use "me" to refer to your table instance
    )
}
0
जोड़ा