reactjs - 如何在 ReactJS 中创建浏览器路由器?

标签 reactjs react-router

我发现在 React 中创建浏览器路由很困难。这是我想要做的:

import React from 'react';
import { BrowserRouter, Route, Switch } from 'react-router-dom';
import Navbar from './components/navbar/Navbar';
import RecipeList from './containers/recipe-list/RecipeList';
import Recipe from './containers/recipe-details/RecipeDetails';
import Footer from './components/footer/Footer';
import Error from './components/error/Error';
import './App.css';

export default function App() {
  return (
    <div>
      <Navbar />
      <BrowserRouter>
        <Switch>
          <Route exact path="/" component={RecipeList} />
          <Route path="./containers/recipe-details/RecipeDetails" component={Recipe} />
          <Route component={Error} />
        </Switch>
      </BrowserRouter>
      <Footer />
    </div>
  );
}


import React from 'react';
import { Link } from 'react-router-dom';

export default function Recipe() {
  return (
    <div>
      <Link to="../../containers/recipe-details/RecipeDetails">Recipe</Link>
    </div>
  );
}

问题出在我的 Recipe我想为其创建单独路由的组件。
感谢您的回复。

最佳答案

Route的路径是浏览器中将显示该组件的链接,而不是目录结构中组件的路径,您可以设置您的 RouteLink像下面

export default function App() {
  return (
    <div>
      <Navbar />
      <BrowserRouter>
        <Switch>
          <Route exact path="/" component={RecipeList} />
          <Route path="/recipe" component={Recipe} />
          <Route component={Error} />
        </Switch>
      </BrowserRouter>
      <Footer />
    </div>
  );
}

import React from 'react';
import { Link } from 'react-router-dom';

export default function Recipe() {
  return (
    <div>
      <Link to="/recipe">Recipe</Link>
    </div>
  );
}

关于reactjs - 如何在 ReactJS 中创建浏览器路由器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67096956/

相关文章:

javascript - 为什么我的 React 路由器只加载默认路由?

javascript - 将计时器转换为 react

reactjs - reactjs datepicker日期格式

reactjs - 将 forwardRef 与 withRouter 一起使用的正确方法是什么

reactjs - 如何从react-router onEnter hook连接到redux store?

javascript - 什么时候使用 React-Router getChildRoutes?

javascript - 警告 : Failed propType: Invalid prop `component` supplied to `Route`

javascript - ReactJs setState 更改数组中对象的属性

javascript - 使用 react-router 处理 firebase 身份验证

javascript - 多个组件状态的 react 钩子(Hook)没有更新