1
resposta

TypeError no p5.js

Olá Pessoal,

Estou nesse módulo: Jogos clássicos parte 2: laços e listas com Javascript

Estou editando o p5.JS e meu código está funcionando mas fico recebendo um aviso de erro no console e não entendo o que esta acontecendo de errado.

Código de erro: "TypeError: Cannot read properties of undefined (reading '_report') at undefined:2:30224"

Será que alguem consegue me ajudar. Vou colocar o código aqui na sequencia:

let imagemDaEstrada;
let imagemDoAtor;
let imagemCarro;
let imagemCarro2;
let imagemCarro3;

//carro
let xCarro = 600;

//ator
let yAtor = 366;

function preload() {
  imagemDaEstrada = loadImage("Imagens/estrada.png");
  imagemDoAtor = loadImage("Imagens/ator-1.png");
  imagemCarro = loadImage("Imagens/carro-1.png");
  imagemCarro2 = loadImage("Imagens/carro-2.png");
  imagemCarro3 = loadImage("Imagens/carro-3.png");
}

function setup() {
  createCanvas(500, 400);
}

function draw() {
  background(imagemDaEstrada);
  mostraAtor();
  mostraCarro();
  movimentaCarro();
  movimentaAtor();
}

function mostraAtor() {
  image(imagemDoAtor, 100, yAtor, 30, 30);
}

function mostraCarro() {
  image(imagemCarro, xCarro, 40, 50, 40);
}

function movimentaCarro() {
  xCarro -= 2;
}

function movimentaAtor() {
  if (keyIsDown(UP_ARROW)) {
    yAtor -= 2;
  }
  if (keyIsDown(DOWN_ARROW)) {
    yAtor += 2;
  }
}

Desde já agradeco a atenção.

1 resposta

Oiê Octavio, tudo bem?

Agradeço por esperar um retorno nosso!

Ao verificar o seu perfil da Alura vi que já concluiu o curso, então acredito que tenha resolvido o erro.

A mensagem de erro estava avisando que não poderia ler as propriedades de undefined. Em JS, undefined é um tipo primitivo (categorias de tipos de informações que a linguagem tem implementada). Uma variável que não recebeu um valor, ou uma instrução que depende de uma variável sem valor atribuído são do tipo undefined.

Em alguns casos, é comum recebermos essa mensagem quando o código, que está na pasta index.html, encontra-se errado.

Entre na sua pasta index.html e veja se o código está assim:

<!DOCTYPE html><html><head>
<script src="p5.min.js"></script>
<script src="p5.dom.min.js"></script>
<script src="p5.sound.min.js"></script>
<link rel="stylesheet" type="text/css" href="style.css">
<meta charset="utf-8">
</head>

Se estiver, troque-o por esse:

<!DOCTYPE html>
<html lang="en">
<head>
<script src="[https://cdnjs.cloudflare.com/ajax/libs/p5.js/1.4.1/p5.js](https://cdnjs.cloudflare.com/ajax/libs/p5.js/1.4.1/p5.js)"></script>
<script src="[https://cdnjs.cloudflare.com/ajax/libs/p5.js/1.4.1/addons/p5.sound.min.js](https://cdnjs.cloudflare.com/ajax/libs/p5.js/1.4.1/addons/p5.sound.min.js)"></script>
<link rel="stylesheet" type="text/css" href="style.css">
<meta charset="utf-8" />
</head>

Espero ter ajudado você a resolver este problema, senão, pode nos enviar uma nova mensagem aqui no fórum com o link do seu projeto, dessa forma, posso analisar o seu código mais pontualmente. Estarei à disposição para te ajudar!

Bons estudos e a gente se vê!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado! ✓.