ext store.load非同步問題

來源:互聯網
上載者:User
使用ext的store.load(),之後然後使用store.getCount(),
       store.load(parameter);
       store.getCount();
發現其值始終為0,好像沒有load成功,查了相關的資料發現,store.load其實是個非同步方法呼叫,load之後的結果不能再load函數後馬上顯示。
如果需要改變這種方法,那麼應該將store.getCount放在load的callback中。
例如:

   store.load({callback : function(){

          store.getCount();

         }

          });

這樣的話每次調用load的時候就會去調store.getCount()方法。立即就會得到值。

  this.userStore.removeAll();  

    userStore.load({
      callback : function(r, options, success) {
       alert("callback");
       if (success) {
        for (var i = 0; i < r.length; i++) {
         var record = r[i];
         var v = record.data.userName;
         alert(v);
        }
       }
      }
     });

Ext.Ajax.request({

   url: '',

  method: 'post',

  async: false, //同步請求

  success: function(response) {

}

});

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.