Avatar ·

Como implementar a função sleep (atraso) em TypeScript?

Olá a todos! Sou um desenvolvedor iniciante em TypeScript e Angular. Encontrei o seguinte problema: preciso fazer uma pausa na execução do código, por exemplo, para simular o carregamento de dados ou criar um atraso antes de uma nova requisição à API. Em JavaScript, vi a função setTimeout, mas ela não bloqueia a execução, apenas adia a chamada do callback. Preciso de algo como sleep(2000), para que a execução do código pare por 2 segundos e depois continue. Aqui está o que tentei: ```typescript function sleep(ms: number) { setTimeout(() => { // algo deve acontecer? }, ms); } async function loadData() { console.log('Iniciando carregamento...'); sleep(2000); // quero esperar 2 segundos console.log('Dados carregados'); // isso é executado imediatamente } ``` Mas o código não funciona — o segundo console.log é executado imediatamente, sem atraso. Como implementar corretamente o sleep em TypeScript? Preciso usar Promise ou async/await? Agradeço por exemplos com explicações. De preferência