javascript - 错误说我忘记从它定义的文件中导出我的组件,但我没有导出任何自定义组件(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"));
错误:
错误:元素类型无效:应为字符串(对于内置组件)或类/函数(对于复合组件),但得到:未定义。您可能忘记从定义组件的文件中导出组件,或者您可能混淆了默认导入和命名导入。
解决方案
我认为您正在从错误的文件中导入文件。
import { BrowserRouter as Router, Route, NavLink } from "react-router-dom";
推荐阅读
- c++ - 在 C++ 中拆分输入
- python - 多索引熊猫数据框中两个不同日期的分组总和之间的差异
- reactjs - React:如何使用 componentDidUpdate 更新 location.pathname?
- r - 按 R 中的组计算平均值
- javascript - 使用 formData 和 Axios 的 PATCH 请求的输入数据在 Laravel 上不可用
- python - 'beeline' 未被识别为内部或外部命令
- sql - 使用 JOIN 中的两个 OR 语句保持数据质量并加快查询速度
- reactjs - 在反应中迭代Json对象
- javascript - 删除过滤器方法React / JS中的多个项目
- php - 使用 Laravel Socialite 注册和登录 Facebook