我将JQuery Get函数封装在一个javascript文件中:
var Ajax = {
get: function (url) {
$.get(
{
url: url,
timeout: 120000,
cache: false,
async: true,
dataType: "json",
contentType: "application/json; charset=utf-8"
}
).done(function() { DoSomethingDoneFirst(); }).fail(function (x, y, z) { DosomethingFailedFirst());
}
}
如您所见,我在此封装方法中利用了Promise对象的fail and done方法,因为当请求完成时,我需要执行一些操作。我还应该如何返回promise对象,以便使用此Get方法的任何调用函数都可以追加自己的完成,失败等方法。
看下面的例子,开发人员可以在自己的代码中使用Get函数。我希望1)调用Ajax Get请求; 2)完成时-将调用DoSomethingDoneFirst; 3)将调用开发人员DoSomethingSecond函数。我想从Get方法返回Promise对象,以便开发人员可以“附加”自己完成,失败,始终执行等方法。我该怎么做?
function Test() {
if (1==1){
Ajax.get(http://www.example.com).done(DoSomethingSecond)
}
}