javascript - 前端路由怎么去掉#
PHPz
PHPz 2017-04-11 09:21:02
[JavaScript讨论组]

我在自己实现路由的时候都是用的#后边接路径,但是我想知道现在的框架为什么可以不用#,直接用/就实现路由的呢?不带#直接用/不会跳到新页面吗?那样就不是单页面应用了啊??

PHPz
PHPz

学习是最好的投资!

全部回复(3)
伊谢尔伦

可以使用/呀,可以使用history.replaceState/pushState这套history的API来修改页面URL而不跳新页面。
比如ReactJS中就提供了Router.HistoryLocation来做这家事情。

具体细节请参考:

  1. 操纵浏览器的历史记录 - MDN

  2. 再谈 React Router 使用方法

天蓬老师

HTML5 history API

阿神

通常前端处理url地址,也就是你这里说的路由,采用#,页面不会刷新。当然,现在可以结合history的popstate相关的可以实现页面内容的更新(注意,还是可以做到内容不刷新)。

路由控制一般是后端配合,如果你真要想前端通过/,而不是#实现不刷新更新内容的话,需要后端配合。

注意这里,一个需要后端端配合,一个不需要后端配合,这里说的是路由控制。

这个需要了解下后端路由控制处理,就可以知道为什么可以。

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号