在反应或香草 js 中链接时如何从 URL 中删除 #

How to delete the # from the URL when linking in react or vanilla js

我正在开发一个网站,在该网站上我的顶部有一个Navbar,并且在选择选项时,屏幕将转移到与ID链接的页面的一部分。我的问题是,一旦我按下选项,URL 就会显示 # + 所选选项。我怎样才能删除 # 并只留下这个词,或者是否可以选择删除两者。我没有使用 REACT-ROUTER-DOM

发生了什么:www.mywebsite.com/#aboutus

我想要发生什么:www.mywebsite.com/aboutus or just www.mywebsite.com

导航栏

<div className="main-navbar">
    <a href="#home">home</a>
    <a href="#aboutus">about</a>
    <a href="#contact">contact</a>
</div>

示例

<div id="aboutus">
  //CONTENT
< /div>

首先不能删除#,因为#指定了你想要关注的元素,除了#你可以使用Element.scrollIntoView() 并制作一个点击事件,该事件将滚动到没有 #

的元素
document.getElementById("yourid").scrollIntoView();

查看此 page 了解更多信息