3
respostas

Preciso de ajuda. Tentativa de fazer o curso com Expo e TS

Seguinte pessoal, já modifiquei o codigo todo para TS. Contudo estou tendo uma dificuldade em typar um Item no diretorio : src\telas\Cesta\componentes\Item.tsx To quebrando minha cabeça a horas e não estou conseguindo entender direito.

Outra coisa, como eu refiz tudo com EXPO e usei o Yarn, como sei que tenho todas as dependencias do projeto inicial???

Por favor alguém poderia me ajudar, quase não dormi pensando nisso. Deixo aqui o link do repositorio do git: https://github.com/leoopl/orgs

Desde já agradeço a todos!! Espero que alguém possa me responder

3 respostas

E aí boa noite, tudo bem? Não se já conseguiu resolver mais talvez na tua interface Props do Item possa ficar assim:

interface Props {
  item: {
    nome: string;
    imagem: any;
  }

Depois precisa somente definir aqui export default function Item({ item: { nome, imagem } }:Props).

Pode ir dando o feedback aqui se deu certo ou não que eu tento ajudar.

Era exatamente isso, Guilherme!!! Obrigado, Obrigado mesmo. Modifiquei esse Props e arrumei outras coisas, mas ainda não ta rodando no Expo app. Agora ta tando: Error: Objects are not valid as a React child (found: object with keys {boasVindas, legenda, legendaMelhoresProdutores, tituloProdutores, tituloProdutor, tituloCestas, topoCesta, botaoComprar, tituloItens}). If you meant to render a collection of children, use an array instead. Mas eu já modifiquei pra Array tudo, até a inicialização do useState em \src\hooks\useTextos.tsx

Esse problema ocorre pois o React Native não renderiza objetos. Assim está no teu arquivo index.tsx que está em telas > Home > index.tsx.

O teu tituloProdutores está um objeto já que vem direto do useTextos: <Text style={estilos.titulo}>{tituloProdutores}</Text>

Nesse caso como o useTextos é um objeto e tu quer acessar um campo especifico, tu pode colocar o campo entre { } (chaves), ficando desse jeito: const { tituloProdutores } = useTextos();