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)

Curiosidade - Uppercase

Boa tarde,

tentei criar os function component usando uma const declarada com a primeira letra minúscula (tableHead ao invés de TableHead). A compilação não dá erro, não mostra nada no console, mas os componentes não aparecem na tela.

Se eu tentar declarar a classe com a primeira letra minúscula (tabela ao invés de Tabela), a tela fica em branco e o console acusa:

Warning: The tag <tabela> is unrecognized in this browser. If you meant to render a React component, start its name with an uppercase letter.
    in tabela (at App.js:32)
    in div (at App.js:31)
    in App (at src/index.js:7)

Na aula de JS Avançado I, o mestre Flávio recomenda o uso em maiúscula como convenção do curso, mas diz que o uso é atípico (primeiro minuto do vídeo): https://cursos.alura.com.br/course/javascript-es6-orientacao-a-objetos-parte-1/task/16498. E se eu criar uma classe no ES6 com a letra minúscula, o script aceita sem dar erro.

Enfim, usar a primeira letra em maiúscula, é só uma questão do React e uma preferência do Flávio, ou uma convenção da programação orientada a objetos?

1 resposta
solução

Isso é algo do React. Aqui tem o motivo:

https://pt-br.reactjs.org/docs/jsx-in-depth.html#user-defined-components-must-be-capitalized