0

これらは両方とも同じように機能する2つのオプションです。

        var promise=doAjax(dataStr,'shop');
        promise.success(function(data){
            json=eval('('+data+')');
            console.log(json['Data']);
        });
        promise.error(function(data){
            alert('There was an error');
        });

機能付き:

function doAjax(dataStr,process){
    return $.ajax({
        data: dataStr,
        url: '/process/'+process+'/'
    });
}

または、それ以外の場合は次のようになります。

        $.ajax({
            data: dataStr,
            url: '/process/shop/',
            success: function(data){
                json=eval('('+data+')');
                console.log(json['Data']);
            },
            error: function(data) {
                alert('There was an error');
            }
        });

では、最初の方法はコードが少し軽いので、それを行う最も効率的な方法は何ですか?

4

1 に答える 1

0

ラッパーを頻繁に使用する場合は、コードをクリーンに保つために実装できます。次のラッパーを使用する場合もあります。

//initPostData() returns ready-to-post js object
ajaxWrapper(initPostData(), "url", function (response) { 
    //some logic here              
});

function ajaxWrapper(postData, url, callback) {
    $.ajax({
        type: 'POST',
        contentType: "application/json; charset=UTF-8",
        dataType: 'json',
        data: JSON.stringify(postData),
        url: url,
        success: function (response) {
            callback(response);
        },
        error: function () {
            //error logic
        }
    });
}
于 2013-03-14T13:27:04.220 に答える