React Router 在重新加载时起作用,但在单击链接时不起作用

2024-01-08

我已经设置了 Reactreact-router版本 4。当我直接在浏览器上输入 URL 时,路由会起作用,但是当我单击链接时,浏览器上的 URL 会发生变化(例如http://localhost:8080/类别 http://localhost:8080/categories),但内容不会更新(但如果我刷新,它就会更新)。

以下是我的设置:

The 路由.js设置如下:

import { Switch, Route } from 'react-router-dom';
import React from 'react';

// Components
import Categories from './containers/videos/Categories';
import Videos from './containers/videos/Videos';
import Home from './components/Home';

const routes = () => (
  <Switch>
    <Route exact path="/" component={Home}/>
    <Route path="/videos" component={Videos}/>
    <Route path="/categories" component={Categories}/>
  </Switch>
);

export default routes;

我使用的链接Nav.js如下面所述:

<Link to="/videos">Videos</Link>
<Link to="/categories">Categories</Link>

The App.js如下:

import React from 'react';
import './app.scss';
import Routes from './../routes';
import Nav from './Nav';

class AppComponent extends React.Component {

  render() {
    return (
      <div className="index">
        <Nav />
        <div className="container">
          <Routes />
        </div>
      </div>
    );
  }
}

AppComponent.defaultProps = {
};

export default AppComponent;

我会检查你的组件并确保你只有一个<Router> ... </Router>。还 -确保你有一个<Router>...</Router>在某些情况下,您可能会使用多个路由器,但如果您不小心嵌套了路由器(因为您快速破解并在将其移动到各种地方时忘记删除一个路由器;-) - 这可能会导致问题。

我会尝试

import {
  BrowserRouter as Router,
}  from 'react-router-dom'

// Other Imports

...

return (
  <Router>
    <div className="index">
      <Nav /> <!-- In this component you have <Links> -->
      <div className="container">
        <Routes />
      </div>
    </div>
  </Router>
);

在最顶层的组件 (App.js) 中。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

React Router 在重新加载时起作用,但在单击链接时不起作用 的相关文章

随机推荐

  • 如何在不离开页面的情况下更改浏览器中显示的 URL

    是否可以使用 JavaScript 更改浏览器的 URL 但不离开页面 在旧版浏览器中 您可以not无需离开页面即可更改地址栏中的 url 但您可以在不离开页面的情况下更改 url 的哈希部分 也就是说你可以改变www example co
  • 如何在 Cocoa/Objective-C 中编写简单的 Ping 方法

    我需要写一个简单的pingCocoa Objective C 中的方法 它还需要在 iPhone 上运行 我找到了一个使用的例子icmp 这适用于 iPhone 吗 我倾向于使用解决方案NSNetServices 这是一个好主意吗 该方法只
  • 另一个 GitHub 帐户错误地推送到 GitHub

    我有一个名为的本地存储库a它已经与名为的远程存储库关联AGitHub 帐户的A github 我还有一个名为的本地存储库b尚未与任何远程存储库关联 我创建了一个名为的新远程存储库BGitHub 帐户的B github 我尝试第一次推动B从本
  • 如何区分不存在的服务或缺乏记录?

    我正在制作一些 REST 服务 当我实现 GET 请求时 我正在讨论如果那里没有记录我应该做什么 例如 profile 1234 现在 如果您尝试使用 profiles 1234 注意配置文件上的 s 这肯定是 404 代码 因为肯定找不到
  • Unity iOS 支持,安装失败

    我正在尝试使用 Unity 创建一个 iOS 应用程序 我使用 Unity Hub 安装 Unity 然后我打开 Unity 转到 文件构建设置 我点击 iOS 它显示 未加载 iOS 模块 所以我点击了 打开下载页面 我下载了UnityS
  • 在页面加载之前显示加载图标?

    我想向用户显示一个加载图标 直到页面元素完全加载 我怎样才能用 javascript 做到这一点 并且我想用 javascript 而不是 jquery 做到这一点 Here https www googlesciencefair com
  • AsyncTask、RejectedExecutionException 和任务限制

    我正在使用 AsyncTask 从远程服务器获取大量缩略图并在网格视图中显示它们 问题是 我的网格视图一次显示 20 个缩略图 因此创建 20 个 AsyncTasks 并启动 20 次执行 每个缩略图一次 I get RejectedEx
  • Rails:为什么 find(id) 在 Rails 中引发异常? [复制]

    这个问题在这里已经有答案了 可能的重复 当 id 1 不存在时 Model find 1 给出 ActiveRecord 错误 https stackoverflow com questions 4966430 model find1 gi
  • 如何在地图上找到对角线周围的边界矩形? (地理位置)

    用户在地图上画一条线 并希望查找该线特定距离内的一些信息 我有A and B地点位于 经纬度 格式 用户告诉我距离 A和A1之间的距离 in 米 公里 我该如何计算A1 A2 B1 B2地点位于 经纬度 格式 我正在使用 C 并且坐标锐利
  • 如何将图标添加到 NSMenuItem 的右侧

    我正在尝试将一些图标添加到菜单项旁边的菜单右侧 最好是合理的 我知道 NSMenuItem 允许您添加菜单项 例如 请参阅菜单疯狂 http developer apple com library mac samplecode MenuMa
  • XCTest 输出到文件

    我可以使用运行 XCTestsxcodebuild test命令 但是当我运行这个命令时 它会输出构建日志 然后最后会输出测试日志 有没有一种方法可以仅将测试的输出 无构建日志 重定向到单独的文件 我在 xcodebuild 命令中找不到任
  • 使用 jsPDF 将 HTML 表格导出为包含多列的 PDF

    我想链接这个没有任何答案的问题 使用 jsPDF 将 HTML 表格导出为 PDF 格式 https stackoverflow com questions 24414643 exporting html table to pdf with
  • 为什么linux多架构使用x86_64-linux-gnu而不是lib64?

    我最近在部署 32 位和 64 位库时遇到了 Linux 中的多架构 出于好奇 为什么 lib64 被放弃而有利于例如 lib x86 64 linux gnu 看似过于复杂 但一定有其原因 长版本可以在以下位置找到http wiki de
  • 如何开始构建 Mac 应用程序

    我是一名 Python Web 程序员 现在 我想转向构建 Mac 应用程序 请告诉我 我需要学习什么才能开始 你会推荐什么书 假设您在考虑到 python 标签将被解释为适用于问题而不是提问者后添加了 python 标签 那么您一定有兴趣
  • Android 中的 switch-case 中可以使用条件语句吗?

    在我的搜索中 我似乎无法找到直接的是或否的答案 在Android中 有没有办法在case switch中使用条件语句 例如 年龄是一个 int 值 switch age case gt 79 Do this stuff break case
  • 如何创建依赖于普通变量、函数或逻辑的 ember 属性?

    问题 我正在为 emberjs 制作传单视图 但遇到了一些问题 Leaflet是一个外部库 与问题有些无关 但只需知道它是一个映射库即可 考虑一个简单的属性 例如缩放级别 Leaflet 地图实例具有可通过以下方式访问的缩放级别map ge
  • 如何更改 Laravel 5 中的视图文件夹?

    我正在使用 Laravel 5 和 AngularJS 开发一个 Web 应用程序 我在客户端使用纯 angularJS 应用程序 并将客户端应用程序文件 视图 放在我的public folder 在 Laravel 4 中 我可以更改路径
  • 气流+芹菜或dask。为了什么,什么时候?

    我阅读了 Airflow 官方文档下列 https airflow apache org configuration html scaling out with celery 这究竟意味着什么 作者所说的横向扩展是什么意思 那是 when
  • 在引导模式中动态加载角度分量

    我正在尝试制作一个可重复使用的quickView我的应用程序中的模态使用动态加载任何组件ng bootstrap 模态库 https ng bootstrap github io components modal examples 就我加载
  • React Router 在重新加载时起作用,但在单击链接时不起作用

    我已经设置了 Reactreact router版本 4 当我直接在浏览器上输入 URL 时 路由会起作用 但是当我单击链接时 浏览器上的 URL 会发生变化 例如http localhost 8080 类别 http localhost