0

店舗データを動的にロードしたいのですが、モデルを使用したくありません。データリストを提供すると入力されますが、ストアのプロキシを使用すると呼び出されず、URL がヒットしません。助けてください。

Ext.define('TrainEnquiry.view.SearchTrainResults', {
 extend: 'Ext.List',
    xtype: 'searchedtrainresult',
    requires: 'Ext.data.proxy.JsonP',
    config: {
        itemId: 'searchedtrainresult',
            title: 'Train Result:',
            itemTpl: '<div class="myContent">'+ 
                    '<div><b>{number}</b> </div>' +
                    '</div>',
        store: {
                            fields: ['number'],
                            /*data: [
                                {number: 'Cowper'},
                                {number: 'Everett'},
                                {number: 'University'},
                                {number: 'Forest'}
                            ]*/
                            proxy: {
                                url: 'http://abc.amazonaws.com/search.json',
                                type:'jsonp',
                                extraParams : {
                                                'q' : '12313'
                                            },                             
                                reader: {
                                    type: 'json',
                                },
                                    success: function() {
                                        debugger;
                                             console.log('success');

                                       },
                                       failure: function() {
                                        debugger;
                                              console.log('failure');
                                        }
                        }
                    },

        onItemDisclosure: true


}
});
4

3 に答える 3

0

プロキシから pageParam と startParam を削除してみてください。ちょうどこのような

Ext.create('Ext.data.Store', {
storeId:'UserStore',

autoLoad: true,

model: 'UserModel',

proxy: {
    type: 'jsonp', // Because it's a cross-domain

    url : 'https://api.twitter.com/1/lists/members.json?owner_screen_name=Sencha&slug=sencha-team&skip_status=true',

    reader: {
        type: 'json',
        root: 'users' // The returned JSON will have array 
                      // of users under a "users" property
    },

    // Removing pageParam and startParam
    pageParam: undefined,
    startParam: undefined
}
});

ここに例がありますhttp://jsfiddle.net/alexrom7/YNTuN/

于 2013-03-05T19:41:25.127 に答える
0

「フィールド」構成オプションは適切なExt.data.Fieldオブジェクトである必要があると思うので、これでうまくいくかもしれません:

Ext.define('TrainEnquiry.view.SearchTrainResults', {
  ...
  config: {
    ...
    store: {
      fields: [ { name: 'number', type: 'string'} ],
      proxy: {
        ...
      }
    },
    ...
  }
});

( Sencha フォーラムからの参照)

于 2013-03-05T17:18:02.857 に答える
-1

プロキシ ストアのタイプを Ajax (タイプ: 'ajax') に変更してみてください。ちょうどこのような

Ext.create('Ext.data.Store', {
model: 'User',
proxy: {
    type: 'ajax',
    url: '/test.json',
    reader: {
        type: 'json',
    }
},
autoLoad: true
});
于 2013-03-05T14:14:23.333 に答える