В ошибке говорится, что я забыл экспортировать свой компонент из файла, в котором он определен, но я не экспортирую никаких пользовательских компонентов (React)

#javascript #reactjs #ecmascript-6 #react-router #react-router-dom

#javascript #reactjs #ecmascript-6 #реагировать-маршрутизатор #react-router-dom

Вопрос:

В сообщении об ошибке говорилось, что я что-то экспортировал неправильно, поэтому я попытался записать все в один файл, но он по-прежнему не работает. Кодекс:

 
import React, {BrowserRouter, Route, NavLink} from "react";
import ReactDOM from "react-dom";


function About(){
    return(
            <>
            <h1>About Page</h1>
            <NavLink to="/contact">Contact Us</NavLink>
        <NavLink to="/">Main</NavLink>
            </>
    )
}

function Contact(){
    return(
            <>
            <h1>Contact Us Page</h1>
            <NavLink to="/about">About</NavLink>
        <NavLink to="/">Main</NavLink>
            </>
    )
}

function Main(props){
    
    return(
        <>
        <NavLink to="/contact">Contact Us</NavLink>
        <NavLink to="/about">About</NavLink>
        </>
    )
}

function App(){
    return(
        <BrowserRouter>
            <Route exact path="/" component={Main}/>
            <Route exact path="/contact" component={Contact}/>
            <Route exact path="/about" component={About}/>
        </BrowserRouter>
     )
}


ReactDOM.render(<App/>, document.getElementById("root"));
 

Ошибка:

Ошибка: недопустимый тип элемента: ожидалась строка (для встроенных компонентов) или класс / функция (для составных компонентов), но получено: не определено. Вероятно, вы забыли экспортировать свой компонент из файла, в котором он определен, или, возможно, перепутали импорт по умолчанию и именованный импорт.

Ответ №1:

Я думаю, что вы импортируете файлы из неправильного файла. import { BrowserRouter as Router, Route, NavLink } from "react-router-dom";