簡體   English   中英

異步延遲加載

[英]Asynchronous Lazy Loading

當前,我們正在使用SAP HANA數據庫。 為了獲取數據,我們將使用通過AJAX調用的Node.JS-API,以通過異步獲得優勢。 所以這是問題所在:

我們有許多頁面需要相同的數據(例如客戶數據)。 為此,我想創建一個執行實際數據調用的庫,因此我只需要調用db.getCustomer([ID]) 為了從AJAX獲得返回值,我必須在AJAX調用中設置async: false

我的問題是,現在可以異步創建數據調用庫嗎? 封裝數據綁定(使用所謂的DAO)是一種好習慣嗎? 我有點困惑,因為另一個開發人員告訴我一次又一次地使用相同的AJAX調用,以免失去異步,這還是一個更好的做法。

這是我實際的AJAX調用示例:

getCustomer: function( CID ) {
            var aUrl = 'http://example.com/api/customer/' + CID,
                returnData
            ;
            jQuery.ajax({
                url: aUrl,
                method: 'GET',
                dataType: 'json',
                contentType: "application/json",
                async: false,
                success: function(data) {
                    returnData = data;
                }
            });
            return returnData;
        },

// other ajax calls 
// to get the data via 1-liner

謝謝您的澄清!

實際上,從同步函數中的回調返回數據沒有任何意義。 通常,您會將返回的回調數據存儲到模型中,因此視圖/控制器會自動更新。

如果您確實需要返回異步數據的方法,請查看Deferred或Promises

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM