下面是使用具有角度承诺的if守卫的最佳方式吗?
function doIt(p) {
var dfd = $q.defer();
if (!p) {
// this the best syntax to return the promise?
dfd.resolve(true);
return dfd.promise;
}
// whole bunch of code stuff with a resolve() and reject()
// finally
return dfd.promise;
}
答案 0 :(得分:2)
我认为这会更清洁
function doIt(p) {
if (!p)
return $q.when(true)
else
return someLongFunction()
}
或者如果你想说清楚它是一个警卫
function doIt(p) {
if (!p)
return $q.when(true)
return someLongFunction()
}