Olá. Estou com um problema um pouco chato na parte de Sincronismo de um método.
Preciso que um método seja síncrono, até ai tudo bem, utilizo Async/Await e dentro do método tudo funciona, porém, gostaria que nos módulos que utilizam este método, a execução fosse "pausada" até que fosse resolvido o método assíncrono, e não que só o interior do método fosse síncrono;
Exemplo: Esta execução esta síncrona, porém, não gostaria de fazer desta maneira
teste = async function(name, path){
let request = await fetch(`${path}/${name}`);
return await request.text();
}
arquivo = teste("arquivo", "./local");
Gostaria de fazer algo assim:
class File{
public async getFile(name, path){
let request = await fetch(`${path}/${name}`);
return await request.text();
}
}
const file = new File();
arquivo = file.getFile("arquivo", "local") // Gsotaria que aqui parasse a execução até que o arquivo recebesse o retorno de file.getFile()...
console.log(arquivo)
Seria possível?
Estou testando no Chrome 66.