如何将普通锚链接与react-router一起使用

2024-01-04

非常类似于这个有角度的问题 https://stackoverflow.com/questions/14712223/how-to-handle-anchor-hash-linking-in-angularjs:使用react-router时如何使用锚链接进行页内导航?

换句话说,使用react-router时如何实现以下纯HTML?

<a href="#faq-1">Question 1</a>
<a href="#faq-2">Question 2</a>
<a href="#faq-3">Question 3</a>

<h3 id="faq-1">Question 1</h3>
<h3 id="faq-2">Question 2</h3>
<h3 id="fa1-3">Question 3</h3>

目前,我拦截此类链接的点击,并滚动到锚点位置。这并不令人满意,因为这意味着不可能直接链接到页面的某些部分。


锚链接的问题在于,react-router 默认是使用 URL 中的哈希来维护状态。幸运的是,您可以将默认行为替换为其他行为,按照位置文档 https://github.com/rackt/react-router/blob/f7b86bc7c40c3e5167bf00c380405a69eb454b25/docs/api/Location.md。在您的情况下,您可能想尝试使用 HistoryLocation 对象来尝试“干净的 URL”,这意味着 React-router 不会使用 URL 哈希。像这样尝试一下:

Router.run(routes, Router.HistoryLocation, function (Handler) {
  React.render(<Handler/>, document.body);
});
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何将普通锚链接与react-router一起使用 的相关文章

随机推荐

  • 当 Windows 进入睡眠模式然后唤醒时 setTimeout 不起作用

    我在 Chrome 中注意到了这一点 有人知道出了什么问题或解决方法吗 您可以使用setInterval相反 它继续运行 如果您需要一次性解决方案 请使用clearInterval删除计时器 setInterval如果计算机处于睡眠状态 而
  • 在视图模式中打开会话

    鉴于我选择的 JPA Hibernate 实现 Spring 和 开发框架 我问这个问题 我一直在思考实体层中的关系 例如 我有一个包含许多订单行的订单实体 我已经设置了我的应用程序 以便它急切地加载每个订单的订单行 您是否认为这是一种解决
  • C 使用信号同步进程

    好吧 我正在尝试自学如何发送信号 但我遇到了一个小问题 我不知道我做错了什么 现在发生的事情是 它正在执行父级 然后转到子级 然后返回父级 它没有执行我希望它执行的操作 即执行父级 用户定义其运行的时间量 然后杀死它然后转到子进程并在相同的
  • 使 tkinter 按钮大小相同

    我想让所有 tkinter 按钮的大小相同 无论文本如何 是否可以拉伸其他按钮以相互匹配或设置特定尺寸 因为我很难在文档中找到如何执行此操作 目前 按钮根据文本的大小进行拉伸 我的意思的例子 https i stack imgur com
  • 在 Selenium IDE 中使用 waitForCondition ( script,timeout )

    我使用 Firefox 的 Selenium IDE 扩展录制了一个脚本 我想添加命令 waitForCondition 我发现它需要两个参数 脚本和超时 在 Selenium IDE 中 每个命令都有 3 个文本字段 命令名称 我假设为
  • SendMessage(WM_COPYDATA) + 记录 + 字符串

    我想发送一条记录 现在只有一个字符串 但我将添加更多变量 这是我第一次处理记录 所以这可能是一个愚蠢的问题 但是 为什么这有效 type TDataPipe record WindowTitle String 255 end var Dat
  • Typescript 自动获取类中的接口属性

    你好 TypeScript 专家 我有以下代码 但我必须在类中重复接口属性 否则我会得到 类错误地实现了接口 使用接口时 是否有 TypeScript 简写可以执行此操作而无需声明Id number 以及该类中的所有其他属性 谢谢 inte
  • AffineTransform 不变换 Stroke?

    使用 Graphics2D 时scale 具有两个不同参数的函数 在 x 和 y 方向按不同比例缩放 稍后在此 Graphics2D 对象上绘制的所有内容也会缩放 这会产生奇怪的效果 即在一个方向上绘制的线条比在另一方向上绘制的线条更粗 下
  • EF Code First:获取 DbContext 的所有 POCO 类型

    有没有办法从指定的 DbContext 实例获取 POCO 的类型 您需要访问元数据工作区 http msdn microsoft com en us library system data metadata edm metadatawor
  • 如何在 Windows 上使 add_custom_command 配置特定?

    为了在我的一个项目中运行单元测试 我有一个自定义命令 它将可执行文件 库和其他相关文件复制到其他位置 以便它们可以使用特定的设置运行 而不是在它们所在的位置运行它们建造的 在 Linux 上 这非常简单 但在 Windows 上 我遇到了一
  • 如何同时编辑单词的所有突出显示实例?

    在 Notepad 中 每当您选择 HTML 文档 或 CSS 中的任何单词时 类似的单词都会自动突出显示 是否有一个快捷方式可以用来一次编辑所有这些突出显示的片段 目前 Notepad 6 9 2 版本中尚未内置选择所有相似文本并进行编辑
  • 如何使用 pubsub 模拟器在本地调用 firebase Schedule 函数

    我正在研究云功能 尤其是日程功能 我需要每 5 分钟定期触发一个函数 但仅在测试步骤中 我需要在 pubsub 模拟器上运行它而不部署它 怎么做 我尝试使用 firebase shell 但它只触发一次 exports scheduledF
  • 如何在 Windows 上安装和使用 cURL? [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 我无法在 Windows 上运行 cURL 我已经从以下位置下载了 cURL zip 文件here https curl haxx se
  • 通过 Firebase 动态链接传递多个参数 Android

    我使用了 Firebase Dynamics 链接 它可以打开我的应用程序 转到 Play 商店或转到 URL 但是当我通过链接传递一些参数时 我只能获取第一个参数 这是我的动态链接 https xx app goo gl link htt
  • 从其他库重新导出共享库符号 (OS X / POSIX)

    我的问题是 OS X on x86 64 特定的 但更值得赞赏的是适用于其他 POSIX 操作系统的通用解决方案 给定一些共享库 下面称为原始库 的符号名称列表 我希望我的共享库重新导出这些符号 重新导出 就像有人尝试根据我的库解析符号一样
  • 如何在 C# 中通过 VLC api 流式传输视频

    我正在从事视频广播的小型家庭项目 我找到了一些例子Example http csharpmagics blogspot com 但它不起作用 因为需要旧版本的库0 8 6 所以我找到了它 但是当我尝试从 API 获取组件时 我对非托管代码有
  • java.nio.file.FileAlreadyExistsException如何在java7中解决这个问题

    我正在编写代码 我正在使用 java nio api 创建一个目录 我的代码段是 Path target Paths get folder path xx 0 Set
  • 如何从 vue-router 访问 vuex getter 并设置守卫?

    我正在尝试使用 Vue 进行操作 但遇到了一些麻烦 1 我无法从 router index js 文件访问我的 getters 我可以访问它 但它像带有返回函数的函数一样返回 我无法调用并获取值 2 我无法正确设置守卫 使用 Angular
  • 将 Sparkline htmlwidget 包含在 Shiny 应用程序的数据表单元格中,而无需诉诸(太多)JavaScript

    我正在使用sparkline包生成条形图并将其放入单元格中datatable在闪亮的应用程序中 我已经成功地在独立的环境中产生了所需的输出datatable 但是当我将其放入 Shiny 应用程序时 它不起作用 这可能与如何进行有关spk
  • 如何将普通锚链接与react-router一起使用

    非常类似于这个有角度的问题 https stackoverflow com questions 14712223 how to handle anchor hash linking in angularjs 使用react router时如