如何在 React 中 Link 到另一个页面?

How To Link To Another Page in React?

我正在尝试做的事情: 我正在尝试让我的 React Web-App NavBar link 到我应用程序中的其他页面。

我试过的:

  1. 在我的 App.js 文件中,我设置了 React-Router-Dom,如您所见。
  2. 我还在我的 NavBar
  3. 中插入了 links
  4. 现在,我在本地服务器上查看站点时遇到问题。 (见截图)

这是 App.js

的代码
import React from "react"
import NavBar from "./NavBar"
import Dashboard from "./Dashboard"
import {BrowserRouter as Router, Switch, Route} from "react-router-dom";

function App() {
    return (
        <Router>
        <div>
            <NavBar />
            <Route path="/dashboard" component={Dashboard} />
        </div>
        </Router>
        )
}

export default App

这是导航栏的代码

import React from "react"
import "./Style.css"
import { link } from 'react-router-dom'

class NavBar extends React.Component {
    render() { return (

        <nav>
            <h1 className="h1">Hello</h1>
            <ul>
                <link to={"./Dashboard"}>
                    <li>Dashboard</li>
                </link>
            </ul>
        </nav>
    ) 
    }
}

export default NavBar

错误截图如下: enter image description here

Link 组件在 import 和 JSX 中都必须以大写字母 L 开头。

  import { Link } from 'react-router-dom'
  
  <Link to={"./Dashboard"}>
    Dashboard
  </Link>

https://reactrouter.com/web/api/Link 阅读更多内容,也有一些示例。

顺便说一句:Link 应该在 li

里面

您使用 link 的方式不对


import {Link} from "react-router-dom";

<Link to="/Dashboard"> Dashboard </Link>

使用它,看看它是否有效

在 app.js 文件中:如下所示添加 Switch Router 并将确切的词添加到路由

 return (
    <Router>
    <div>
        <NavBar />
         <Switch>
        <Route exact path="/dashboard" component={Dashboard} />
       </Switch>
    </div>
    </Router>
    )

导出默认应用程序

在导航栏文件中:根据需要进行更改

return (

    <nav>
        <h1 className="h1">Hello</h1>
        <ul>
              <li><link to="/dashboard">Dashboard<link></li>
        </ul>
    </nav>
) 

注意:它不是 /Dashboard 而是你提到的路线中的 /dashboard

导出默认导航栏

在App.js中,使用

<main>
        <Switch>
          <Route exact path="/" component={HomeScreen}/>
          <Route exact path="/product/:id" component={ProductScreen}/>
          <Route exact path="/cart" component={CartScreen}/>
          
        </Switch>
      </main>