代码之家  ›  专栏  ›  技术社区  ›  THE JOATMON

这两种AJAX请求语法之间有什么区别?

  •  0
  • THE JOATMON  · 技术社区  · 8 年前

    以下两者之间有区别吗

        $.ajax({
            type: 'POST',
            url: someApiUrl,
            contentType: 'application/json; charset=utf-8',
            data: someData
        }).success(function (payload, status, xhr) {
            //success code
        });
    

        $.ajax({
            type: 'POST',
            url: someApiUrl,
            contentType: 'application/json; charset=utf-8',
            data: someData,
            success: function (payload, status, xhr) {
                //success code
            }
        });
    

    如果是这样,每种方法都有哪些优点/缺点?

    如果有更好的方法来回答这个问题,可以获得额外的分数。也许这些技术有名字?

    2 回复  |  直到 8 年前
        1
  •  4
  •   Jared Smith    8 年前

    正如所写,它们是相同的。只要稍作改动,第一种可能优于第二种。也就是说:

    var $eventualResult = $.ajax({
        type: 'POST',
        url: someApiUrl,
        contentType: 'application/json; charset=utf-8',
        data: someData
    });
    

    现在结果是 ,您可以传递它,从函数返回它,在不同的上下文中使用它:

    $eventualResult.then(function (result) { /* uses the result */ });
    
    // meanwhile, elsewhere in the codebase...
    
    $eventualResult.then(function (result) { /* do something else */ });
    

    将回调参数用于 $.ajax

        2
  •  1
  •   Omar Himada    8 年前

    首先实例化AJAX调用,然后向其附加一个成功事件