1
resposta

Erro ao transformar o componente App em um styled component

import React from 'react';
import styled from 'styled-components';
import './App.css';
import { Header } from '../src/Components/Header';
import { GlobalStyle } from '../src/Components/GlobalStyle';
import { Menu } from '../src/Components/Header/Menu';

const AppContainer = styled.div`
    display: grid;
`;

function App() {
   return (
            <AppContainer className="App">
                    <GlobalStyle/>
                    <Header/>
                    <Menu/>
            </AppContainer>
  );
}

export default App;

Eu recebo o seguinte erro ao fazer essa conversão:

Error: Element type is invalid: expected a string (for built-in components) or a class/function (for composite components) but got: object. You likely forgot to export your component from the file it's defined in, or you might have mixed up default and named imports.

Check the render method of App.

Garanta sua matrícula hoje e ganhe + 2 meses grátis

Continue sua jornada tech com ainda mais tempo para aprender e evoluir

Quero aproveitar agora
1 resposta

Olá Emilly, tudo bem?

Sem ver o seu código fica um pouco complicado de saber exatamente onde está a raiz do problema.

O problema pode ser:

  1. O import do seu componente pode estar errado, confira se por exemplo o export do Menu é de ../src/Components/Header/Menu ou de ../src/Components/Menu, sem o Header.

  2. Um dos componentes que você está utilizando (o <Menu> ou o Header) não está sendo exportado do seu arquivo ou está sendo exportado como default e você está importando com chaves, export default deve ser feito sem chaves como por exemplo:

O export dentro de src/Components/Header/Menu:

export default Menu;

O import dentro do App

import Menu  from '../src/Components/Header/Menu';

Caso essas soluções não se apliquem a você, me envie o link do seu Github para que eu consiga debugar o problema.

Espero que uma destas soluções tenha resolvido seu problema!

Bons estudos!