如果我创建了一个角度测试,我使用public JsonResult LoadForm(object id) {
if ((form = db.tbSystFormulario.FirstOrDefault(f => f.pk_id.CompareTo(id) == 0)) == null)
{
form = db.tbSystFormularioCampo.FirstOrDefault(f => f.tx_nome.CompareTo(id) == 0);
}
return Json(LoadForm(form), JsonRequestBehavior.AllowGet);
}
来模拟或创建一个promise,然后创建一个defer任务。
我认为通过致电$q
应该解决这些承诺。
但是如果我这样做,那么调用$rootScope.$apply
会抛出异常,因为
错误:要延迟的任务要刷新(1):{id:0,时间:0}
为什么会这样以及如何解决?
$timeout.verifyNoPendingTasks()