4

私はextjsで働いています。私は次のように店を持っています-

 Ext.define('Balaee.store.qb.QbqnsStore',{
            extend: 'Ext.data.Store',
            model: 'Balaee.model.qb.QbqnsModel',
            autoLoad: true,

            proxy:
            {
                type:'ajax',
                api:
                {
        read:index.php/QuestionBank/qbpaper/createpaper',

        },
                reader:
                {type:'json',
                    //root:'polls',},
                writer:
                {type:'json',
                    root:'data',
                }}});

したがって、プロキシの読み取りプロパティは上記の URL に設定されます。今、私はこの同じストアを他のビューに使用したいのですが、読み取りプロパティの URL が異なります。ストアの読み取り URL を動的に変更するにはどうすればよいですか? ボタンクリックイベントとして試してみました URLからデータを読みたい- /index.php/QuestionBank/qbpaper/Reviewquestionpaper111

ボタンクリック機能については、次のように書いていました-

review:function()
    {
        //alert("hello");

        var QbqnsStore=this.getStore('qb.QbqnsStore');
        proxy=QbqnsStore.getProxy();
        Ext.apply(proxy.api,{
            read:'http://127.0.0.1/s_balaee/Balaee/index.php/QuestionBank/qbpaper/Reviewquestionpaper',

        });

このストアの変数を作成し、新しい必要な URL を提供しました。Btは機能していません。したがって、読み取りプロパティで異なる URL を持つ異なるビューに同じストアを使用する方法。

4

4 に答える 4

3

次のように試すことができます:

QbqnsStore.proxy.url =  'new url';

これにより、読み取りURLが変更されます。URLを変更した後は、ストアをリロードする必要があります。

QbqnsStore.reload();
于 2013-02-20T11:41:34.357 に答える
2

次のコードを使用できます。

 var QbqnsStore=this.getStore('qb.QbqnsStore').load({url:'newUrl'});
于 2013-03-04T10:51:43.473 に答える
0

オブジェクトproxyのreadプロパティを変更するだけです:

  var store = this.getStore('qb.QbqnsStore');
  proxy = store.getProxy();
  proxy.api.read = 'http://127.0.0.1/myNewUrl';

そして、store.sync()またはstore.load()メソッドを呼び出します。

于 2014-08-21T12:01:15.490 に答える
0

store.proxy.api.read = '新しい URL';

于 2016-04-25T13:33:52.980 に答える