0

Ext.Ajaxがいくつかのデフォルト値を設定できる中心点を取得するために行ったように、Connectionクラスを拡張しようとしました。

  Ext.define( 'App.helper.HttpApi', {
    extend   : 'Ext.data.Connection',
    singleton: true,

    request: function( oConf ) {

      oConf.url = '/index.php';
      oConf.params.vers = '1.1.json';
      oConf.params...

      this.callParent( oConf );
    }
  } );

「UncaughtExt.Error:No URLが指定されています」と表示されますが、ご覧のとおり、URLが指定されています...どういうわけか、Extコードの深さで失われます。

4

1 に答える 1

1

あなたが得ているエラーは、setOptionsのメソッドによってスローされますExt.data.Connection

Ext.data.Connectionしたがって、のコンストラクターが呼び出されたときにURLを指定して、以降のすべてのメソッドがそのURLを使用できるようにする必要があります。

Ext.define( 'App.helper.HttpApi', {
    extend   : 'Ext.data.Connection',
    singleton: true,

    constructor : function (config)
    {
        config = config || {};
        Ext.applyIf(config, {
            url : '/index.php'
        });

        this.callParent(config);
    },

    request: function( oConf ) {
      oConf.params.vers = '1.1.json';
      oConf.params...

      this.callParent( oConf );
    }
});

または、すべてのリクエストに単一のURLを使用する場合は、このシングルトンのデフォルト値として直接指定できます。

Ext.define( 'App.helper.HttpApi', {
    extend   : 'Ext.data.Connection',
    singleton: true,
    url : '/index.php',

    request: function( oConf ) {
      oConf.params.vers = '1.1.json';
      oConf.params...

      this.callParent( oConf );
    }
});
于 2012-04-13T18:04:00.770 に答える