2012-04-12 3 views
0

Я использую Sencha V2. Я пытаюсь заполнить свой список значениями в файле Users.json.Магазин не загружается

код в моем списке файла

Ext.define('iPolis.view.personlist',{ 
    extend:'Ext.List', 
    xtype: 'personlist', 
    requires: [ 
     'Ext.List', 
     'Ext.form.FieldSet', 
     'Ext.Button' 

    ], 

    config: { 
       fullscreen:true, 
       items: [ 
         { 
         xtype:'toolbar', 
         docked:'top', 
         title:'iPolis', 
          items:[ 
             { 
              ui:'back', 
              icon:'home', 
              iconCls:'home', 
              iconMask:true, 
              id: 'homebtn', 
              handler:function() 
                { 
                } 
             }, 

          ] 
         }, 

         { 
        xtype : 'list', 
        store : 'personListStore', 
        itemTpl : '<div class="contact">HI <br/> {name}</div>' 

         } 
        } 
       ] 

    } 
}); 

и магазин звонит файл, используя:

Ext.define('iPolis.store.personListStore', { 
      extend: 'Ext.data.Store', 
storeId:'personListStore', 
      model : 'iPolis.model.personListModel', 

      proxy : { 
       type : 'ajax', 
       url : '/users.json', 
       reader: { 
        type: 'json', 
        rootProperty: 'users' 
       } 
      }, 
      autoLoad: true 
    }); 

Код для моего файла JSON является:

{ 
    "users": [ 
     { 
      "id": 1, 
      "name": "Ed Spencer", 
      "email": "[email protected]" 
     }, 
     { 
      "id": 2, 
      "name": "Abe Elias", 
      "email": "[email protected]" 
     } 
    ] 
} 

I я получаю пустой экран. Я пробовал все, но данные не отображаются на экране.

+0

Во-первых, 'console.log (yourStore.getRange())', чтобы гарантировать, что ваш магазин действительно получил данные из json-файла. Во-вторых, вставьте сюда код вашего json-файла, файл модели, и я помогу вам отладить это. –

+0

@Thiem: Я отредактировал код и добавил json-файл. Данные json не загружаются в моем списке. Что-нибудь, что делает неправильно? – Khush

ответ

0
Ext.define('iPolis.store.personListStore', { 
    extend: 'Ext.data.Store', 
    config:{ 
    model : 'iPolis.model.personListModel', 
    storeId:'personListStore', 
    proxy : { 
     type : 'ajax', 
     url : '/users.json', 
     reader: { 
      type: 'json', 
      rootProperty: 'users' 
     } 
    }, 
    autoLoad: true } }); 

попробуйте, это может вам помочь.

+0

nope. работа. Я попытался использовать фиктивные данные, чтобы заполнить список, но даже эта работа. Так что угадай, что есть проблема с моей логикой со списком и хранением. – Khush

+0

добавить storeId в магазине и дать его в списке как магазин некоторое время, когда он работает для меня. –

+0

Большое спасибо. Но для кода -> «itemTpl:«

HI {name}{
»« Я получил один ответ строки «HI» без имени, взятого из json-файла. Это дало мне ошибку: «XMLHttpRequest не может загрузить файл: /// D: /TFS/iPolis/app/model/data/users.json? _dc = 1334561794830 & page = 1 & start = 0 & limit = 25. Происхождение null не разрешено Access- Control-Allow-Origin «. – Khush

1

В вашем списке: personStore, но вы пытаетесь использовать personListStore.

+0

я использовал personListStore везде. Мне жаль путаницы. Я пытался создать объект класса магазина и использовать его вместо этого. человекListStore не работает. – Khush

Смежные вопросы