【发布时间】:2022-01-14 03:47:27
【问题描述】:
我正在尝试使用 react-routing-dom lib 呈现一个超简单的网页。这是我的 app.js
import React from 'react';
import Nav from './nav.js';
import Shop from './shop.js';
import About from './about.js';
import { BrowserRouter as Router, Route, Routes } from 'react-router-dom';
import './App.css';
function App() {
return (
<>
<Nav />
<Router>
<Route exact path='/' element={<About />} />
<Route exact path='/shop' element={<Shop />} />
</Router>
</>
);
}
export default App;
使用它,我运行npm start 并期望<Nav /> 和<About /> 组件呈现在http://localhost:3000。相反,屏幕是完全空白的。没有警告、错误等;这是一个干净的构建。甚至没有呈现整个路由器块外部的<Nav /> 组件!
情节变厚了:当我构建并运行以下内容时,所有三个组件都会呈现。
import React from 'react';
import Nav from './nav.js';
import Shop from './shop.js';
import About from './about.js';
import { BrowserRouter as Router, Route, Routes } from 'react-router-dom';
import './App.css';
function App() {
return (
<>
<Nav />
<Router>
<About />
<Shop />
</Router>
</>
);
}
export default App;
据此,我认为可以安全地假设<Route /> 是问题所在。
react-router-dom 似乎在相对较短的时间内发生了很大的变化,因此有很多过时的信息。如果有人能指出我正确的方向,我将非常感激。
【问题讨论】:
标签: reactjs react-router react-router-dom react-component