首页 > 解决方案 > 错误说我忘记从它定义的文件中导出我的组件,但我没有导出任何自定义组件(React)

问题描述

错误消息说我错误地导出了某些内容,因此我尝试将所有内容写入一个文件中,但仍然无法正常工作。编码:


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"));

错误:

错误:元素类型无效:应为字符串(对于内置组件)或类/函数(对于复合组件),但得到:未定义。您可能忘记从定义组件的文件中导出组件,或者您可能混淆了默认导入和命名导入。

标签: javascriptreactjsecmascript-6react-routerreact-router-dom

解决方案


我认为您正在从错误的文件中导入文件。 import { BrowserRouter as Router, Route, NavLink } from "react-router-dom";


推荐阅读