Search code examples
extjsxtemplate

How to use cyrillic var names in Ext.XTemplate


It's very necessary for me to use cyrillic names in XTemplate in ExtJs 5.1

Unfortunately this doesn't work. What I can do to solve this?

    // here is key-value pairs with cyrillic var names
    var varArr = [];
    varArr['key0'] = 'data';
    varArr['ключ1']= 'data'; 
    varArr['ключ2']= 'data'; 

    var tpl = new Ext.XTemplate('param0={key0}, param1={ключ1}, param2={ключ2}');
    
    // ключ1 and ключ2 are ignored
    document.write(tpl.apply(varArr));

Here is fiddle


Solution

  • Use square brackets with values:

    Ext.application({
        name : 'Fiddle',
        launch : function() {
    
            // here is key-value pairs with cyrillic var names
            var varArr = [];
            varArr['key0'] = 'data';
            varArr['ключ1']= 'data_ключ1';
            varArr['ключ2']= 'data_ключ2';
    
            var tpl = new Ext.XTemplate('param0={key0}, param1={[values.ключ1]}, param2={[values["ключ2"]]}');
    
            // ключ1 and ключ2 are ignored
            document.write(tpl.apply(varArr));
    
    
        }
    });