我最近開始使用沉重的客戶端jQuery/javascripts的項目。我正努力讓屏幕工作。處理jQuery ajax異步調用的最佳方式是什麼?
我有功能類似下面:
function init{
populateTypes();
populateGroups();
populateStatuses();
applyCurrentUserSettings();
}
所有populate*
方法讓Ajax調用($.ajax
)服務器和poluate的觀點有些複選框列表。 applyCurrentUserSettings
方法也會發出ajax請求並在視圖上設置當前用戶選擇。
問題是populate*
方法是異步的,調用方法是applyCurrentUserSettings
,checkboxlist是「有時」空的,apply方法失敗。
我可以通過在$.ajax
調用中傳遞async: false
來獲得此工作,或者將每個ajax調用鏈接到另一個調用中,但是我想知道是否有更好的方法/設計模式來處理這種情況。
使用回調函數確保依賴於其他函數的函數始終按順序運行。 –