Bom dia! estou fazendo a segunda aula do curso criando sua biblioteca NodeJS: criando sua biblioteca.
O programa está fluindo bem, só que ao invés de aparecer apenas o conteúdo em casos de rejected da promisse, está aparecendo, literalmente, a linha de código toda no terminal, segue o que estou falando:
PS C:\projetos git\Alura> node .\async_Await.js
C:\projetos git\Alura\async_Await.js:5
throw new Error(erro,'Não foi possível fazer a primeira leitura do readFile')
^
Error: Error: EISDIR: illegal operation on a directory, read
at trataErro (C:\projetos git\Alura\async_Await.js:5:7)
at pegaArquivo (C:\projetos git\Alura\async_Await.js:15:9)
percebe-se que na linha 3 ao invés de aparecer o erro e o texto, aparece a linha de código completa "throw new Error(erro,'Não foi possível fazer a primeira leitura do readFile')"
Alguém sabe o porquê? Eu queria apenas aparecer o erro e texto.
ABAIXO O CÓDIGO:
const chalk = require('chalk');
const fs = require('fs');
function trataErro(erro) {
throw new Error(erro,'Não foi possível fazer a primeira leitura do readFile')
}
async function pegaArquivo(caminhodoArquivo) {
const encoding = 'utf-8'
try{
const texto = await fs.promises.readFile(caminhodoArquivo, encoding)
console.log(texto)
}
catch(erro){
trataErro(erro)
}
}
pegaArquivo('./arquivos')