JSFiddle - React, Tailwind, and code Playground

HTML

<link rel="stylesheet" href="http://dev.sencha.com/deploy/ext-4.0.2a/resources/css/ext-all.css">

JavaScript

Ext.define('MA.reader.Language', {
extend : 'Ext.data.reader.Json',
alias: 'reader.Language',
read: function(response) {        
  var data = [];
  for (var i in response[0])
    data.push({id: i, 'name': response[0][i]});
  return this.callParent([data]);
}

});
Ext.define('MA.store.Language', {
extend : 'Ext.data.Store',
fields : [ {
    name : 'id'
}, {
    name : 'name'
} ],
data : [ {
    "aa" : "Afar",
    "ab" : "Abkhazian",
    "ace" : "Achinese",
    "ach" : "Acoli",
    "ada" : "Adangme",
    "ady" : "Adyghe",
    "ae" : "Avestan",
    "af" : "Afrikaans",
    "afa" : "Afro-Asiatic Language",
    "afh" : "Afrihili",
    "ain" : "Ainu",
    "ak" : "Akan"

} ],
    proxy: {
        type: 'memory',
        reader: {type: 'Language'}

    }
});
var store = Ext.create('MA.store.Language', {storeId: 'Language'});
var cc = Ext.widget('combo', {
  xtype : 'combo',
  name : 'language',
  fieldLabel : 'Language',
  store : 'Language',
  queryMode : 'local',
  displayField : 'name',
  valueField : 'id',
  typeAhead : true,
  forceSelection : true
});
cc.render(Ext.getBody());