我有一个围绕jquery ajax的自定义包装函数。
custom.get = function (path, callback) {
// do other things
$.get(path, function () {
callback()
})
}
操作
$.when(custom.get(path), custom.get(path)).done(function (result1, result2) { callback})
似乎不起作用。它应该工作吗?做延期的任何替代方案?
答案 0 :(得分:0)
不要忘记返回ajax调用,你应该检查以确保在调用之前定义了回调。
custom.get = function (path, callback) {
// do other things
return $.get(path, function () {
if(callback)
callback()
})
}
答案 1 :(得分:0)
您需要从jXHR
函数返回Deferred
对象(它抽象jQuery custom.get()
)才能使其工作:
custom.get = function (path, callback) {
// do other things
return $.get(path, function () {
if( typeof callback === 'function') callback();
})
}
你还应该检查你的第二个参数是否传入,真的是一个避免不必要错误的函数,见上文。