今天在学习react路由时遇到的问题,一直没有找到问题所在,希望能帮忙解答:
1.Route必须要用Routes包含,不然回报错。
2.Routes包含之后会有警告,并且组件也不会渲染。
代码片段:
app.jsx
import React, { Component } from 'react'
import About from './components/About'
import Home from './components/Home'
import { Link, Route, Routes } from 'react-router-dom'
export default class App extends Component {
render() {
return (
<div>
<div>
<div className="row">
<div className="col-xs-offset-2 col-xs-8">
<div className="page-header">
<h2>React Router Demo</h2>
</div>
</div>
</div>
<div className="row">
<div className="col-xs-2 col-xs-offset-2">
<div className="list-group">
<Link className="list-group-item" to="/about">About</Link>
<Link className="list-group-item" to="/home">Home</Link>
</div>
</div>
<div className="col-xs-6">
<div className="panel">
<div className="panel-body">
<Routes>
<Route path="/about" component={About}></Route>
<Route path="/home" component={Home} />
</Routes>
</div>
</div>
</div>
</div>
</div>
</div>
)
}
}
index.js
import React from 'react';
import ReactDOM from 'react-dom';
import {BrowserRouter as Router} from 'react-router-dom'
import './index.css';
import App from './App';
const root = document.getElementById('root')
ReactDOM.render(<Router ><App name="zjq" /></Router>,root)
警告信息:
初学react,希望各位能指点一下,感谢!
问题已找到,react-router-dom 6更新了, 需要将component换为element