Javascript 棱角分明,用settimeout($q)嘲弄承诺
我正在尝试为一项服务设置一个测试线束,使前端的一些东西大约需要1秒的时间 我使用了一个q,这样我就可以调用一个。然后在控制器中,我可以通过使用set timeout来伪造这个,但是我认为我的语法是不正确的。以下是我尝试过的:Javascript 棱角分明,用settimeout($q)嘲弄承诺,javascript,angularjs,angular-promise,Javascript,Angularjs,Angular Promise,我正在尝试为一项服务设置一个测试线束,使前端的一些东西大约需要1秒的时间 我使用了一个q,这样我就可以调用一个。然后在控制器中,我可以通过使用set timeout来伪造这个,但是我认为我的语法是不正确的。以下是我尝试过的: return $q(function(resolve, reject) { setTimeout(function() { }, 1000).then(resolve);
return $q(function(resolve, reject) {
setTimeout(function() {
}, 1000).then(resolve);
});
我只想等一下,然后解决。新到这,将感谢任何意见,谢谢 您的语法确实不正确。函数不使用
.then()
方法返回承诺,而是使用回调。你会想用
return $q(function(resolve) {
setTimeout(function() {
resolve();
}, 1000);
});
然而,如果你使用Angular,你应该直接使用它,它会立即返回一个承诺
return $q(function(resolve, reject) {
setTimeout(resolve, 1000);
});
顺便说一句:在angular中,您应该使用$timeout
服务,而不是javascriptsetTimeout
A无论如何,在中,您还可以找到一个用例示例