0

私の Sencha Touch アプリでは Ext.device.Connection.isOnline() は、デバイスが Wi-Fi に接続されていてもインターネットに接続されていない場合に true を返すため、Ajax 呼び出しがハングします。エラーを正常に処理できるように requestexception イベントをトラップしようとしていますが、動作させることができません。コードは次のとおりです。

Ext.Ajax.request({
                url:    [my url],
                jsonData:{ },
                params:{
                    op:     'myop'

                },

                method:"POST",
                success:function(response, opts){
                    // all good

                },
                failure:function(response, opts){
                    // failed
                },

                listeners: {
                    requestexception: function(connection, response, options,  eOpts) {


                        switch(response.status) {
                            case 0 :
                              Ext.Msg.alert('Error Loading', 'No Internet connection.');
                              break;

                            default :
                              Ext.Msg.alert('Whoops!', 'An unexpected error has occurred.');
                          }

                    }
                }


            });

何が間違っているのかわからない!

ありがとうマット

4

1 に答える 1

0

Ext.define('MyApp.store.MyJsonStore',

extend: 'Ext.data.Store',

config: {
    storeId: 'MyJsonStore',
    proxy: {
        type: 'ajax',
        reader: {
            type: 'json'
        }
    }
},

constructor: function() {
    var me = this;
    me.callParent(arguments);
    me.getProxy().on([{
        fn: 'onAjaxproxyException',
        event: 'exception',
        scope: me
    }]);
},

onAjaxproxyException: function(server, response, operation, options) {
             //Your code here
}

});

于 2012-09-09T09:58:14.843 に答える