obtendo o valor de índice 0 a partir da visualização de dados, qualquer item da lista de toque do sencha

Eu não consigo obter o valor do índice da dataview:

    {          
              xtype: 'list', 
              itemId: 'catList',
              store: 'CategoryStore',    

             scrollable: false,
              layout: 'fit',          
              itemHeight: 20,
              itemTpl: [
              '<div>',
              '<tpl for="data">',
              '<span >{category_name}</span> ',             
          '</tpl>',
          '</div>'],
listeners: {
   'itemtap': function(list, index, target, record, e, eOpts){
     console.log(record.get('cat_id'));
}
}
}

Editado: Se eu colocar dados estáticos na loja, ele funciona bem, mas não funciona enquanto se obtém dados do servidor:

funciona como mostrado na lista:

      {    
          xtype: 'list', 
          itemId: 'catList',
          scrollable: false,

    data: [
    { category_name: 'A', cat_id: 1},
    { category_name: 'B', cat_id: 2},
    { category_name: 'C', cat_id: 3},
    { category_name: 'D', cat_id: 4},
    { category_name: 'E', cat_id: 5},


    ],
    loadingText: "Loading Words...",
    emptyText: '<div>{message}</div>',
    autoLoad:true,
    itemTpl:[
    '<tpl for=".">',
          '<span >{category_name}</span> ',             
      '</tpl>',
    ] 
  },

Aqui, eu toquei muitas vezes na linha diferente, mas só obtém o índice 0, porque é isso? Por que não estou obtendo um valor de índice diferente ao tocar em uma linha diferente do item da lista?

Meu JSON

questionAnswers(2)

yourAnswerToTheQuestion