使用Q延迟时,我应该返回<%@ Control Language="C#" AutoEventWireup="true" CodeBehind="MyControl.ascx.cs" Inherits="MyWebForm.MyControl" %>
<%= myvar %>
和deferred.resolve
的结果吗?
deferred.reject
答案 0 :(得分:1)
您的代码可以更改为:
function foo() {
var deferred = Q.defer();
service.doSomethingAsync({
success: deferred.resolve,
fail: deferred.reject
});
return deferred.promise;
}
您想要从foo()方法返回的内容取决于您当然要实现的目标。在许多情况下,您隐藏内部并返回一个空数组,如果某些内容失败则返回null。但是......如果需要......你可以抛出一个错误。如果你想处理函数之外的东西,是的,请返回错误对象,例如...就像我说的......这取决于。