2012-01-21 3 views
0

Я пытался использовать ExtJS с базой данных JSON, но я продолжаю получать ту же ошибку: ext-all.js Uncaught TypeError: Cannot call method 'getProxy' of undefined.Как я могу разрешить ошибку 'ext-all.js Uncaught TypeError: Не удается вызвать метод getProxy' undefined '?

Мой сценарий:

Ext.onReady(function(
    var store=new Ext.data.Store( 
     reader=new Ext.data.JsonReader(  
          {name: 'name'}, 
      {name: 'category' }, 
      {name: 'address'},     
      {name: 'lat'}, 
      {name: 'long'}, 
          {name: 'tel'}, 
          {name: 'opening'}, 
      {name: 'closing'}), 
       proxy=new Ext.data.HttpProxy({ 
      url : 'http://localhost/progetto/descrittore/json.php'})) 
      // method : 'GET' 
      }) 

В моем HTML я включил:

<script type="text/javascript" src="extjs/ext-all.js"></script> 
<script type="text/javascript" src="extjs/prova.js"></script> 

Что вызывает эту ошибку, и как я могу решить это?

ответ

4

Из названий классов я предполагаю, что вы используете Ext JS 3. Исправьте меня, если я ошибаюсь.

Проблема в том, что вы не следуете API. Store Конструктор имеет следующие подписи:

newExt.data.Store(Object config) : Object

Вы должны предоставить один объект конфигурации. Вместо этого вы передаете считыватель и прокси. Та же история с Reader. Подпись является

newExt.data.JsonReader(Object meta, Array/Object recordType) : Object

Вы должны пройти мета данные и определение записи в виде массива. Исправив это, Ext больше не бросайте exepctions. См. Код ниже.

Ext.onReady(function(){ 
    var store=new Ext.data.Store({ 
     reader: new Ext.data.JsonReader({}, [  
      {name: 'name'}, 
      {name: 'category' }, 
      {name: 'address'},     
      {name: 'lat'}, 
      {name: 'long'}, 
      {name: 'tel'}, 
      {name: 'opening'}, 
      {name: 'closing'} 
     ]), 
     proxy: new Ext.data.HttpProxy({ 
      url : 'http://localhost/progetto/descrittore/json.php' 
     }) 
    }); 
}); 
+0

Ответил давным-давно, но помог мне в моем текущем выпуске! Спасибо, +1 за вас! –

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