Ainda não tem acesso? Estude com a gente! Matricule-se
Ainda não tem acesso? Estude com a gente! Matricule-se

Solucionado (ver solução)

Cannot read property forEach of undefined

Estou tendo um probleminha, alguém na escuta?? Quando acrescentei a variável cursos atribuindo os devidos parametros a ela, ai gerou esse TypeError.

const data = require('./data');

module.exports = {
    geraTrayTemplate() {
        let template = [
            {'label':'Cursos'},
            {type: 'separator'}
        ];

        let cursos = data.pegaNomeCursos();
        cursos.forEach((curso) => {
            let menuItem = {
                label: curso,
                type: 'radio'
            }
            template.push(menuItem);
        });
        return template;
    }

}

Erro -> Uncaught Exception: TypeError: Cannot read property 'forEach' of undefined at Object.geraTrayTemplate

4 respostas

Boa tarde Davi,

O forEach é um método disponível em arrays. Verifique se no momento do erro sua variável cursos é um array. Tente dar um console.log nela e verificar o conteúdo.

let cursos = data.pegaNomeCursos();
console.log(cursos);

Abraços

solução

Boa noite, Davi! Como vai?

Esse problema está ocorrendo pq sua variável cursos está indefinida como a mensagem de erro diz. Provavelmente o método pegaNomeCursos() não está correto. Poste aqui o código desse método para que eu possa dar uma olhada e te ajudar.

Muito obrigado Gabriel, persisti e encontrei o erro. No metodo 'PegaNomeCursos' eu não estava retornando os cursos. Obrigado pela ajuda.

Boa, Davi! Foi o que eu imaginei que estava acontecendo! Esse é um erro comum! Agora é só mandar ver nos estudos!

Grande abraço e sucesso pra vc!

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software