我在JavaScript中有以下代码,我想将其转换为TypeScript:
testJS(): void {
$timeout(function () {
this.done = true;
}, 1).then(function () {
$timeout(function () {
this.done = false;
}, 1000);
});
}
我正在尝试在TypeScript中使用setTimeout函数,但我不太确定如何解决“.then”部分。谁可以帮我这个事?到目前为止的代码:
testTS(): void {
setTimeout(function () {
this.done = true;
}, 1).then(function () {
setTimeout(function () {
this.done = false;
}, 1000);
});
}
答案 0 :(得分:1)
setTimeout
function wait(ms: number): Promise<void> {
return new Promise<void>(resolve => setTimeout(resolve, ms))
}
function testJS(): void {
wait(1).then(() => {
this.done = true;
return wait(1000)
}).then(() => {
this.done = false;
})
}
await
承诺async function testJS2(): Promise<void> {
await wait(1)
this.done = true;
await wait(1000)
this.done = false;
}
注意:您的示例中的this
绑定不清楚。