架构师_程序员_码农网

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 6148|回复: 0

[Angular] Angular 路由 Hash 模式和 HTML5 模式

[复制链接]
发表于 2020-5-28 16:35:03 | 显示全部楼层 |阅读模式
路由的两种策略

  • PathLocationStrategy - 默认的策略,支持“HTML 5 pushState”风格。
  • HashLocationStrategy - 支持“hash URL”风格。

哪种策略更好?

你必须选择一种策略,并且在项目的早期就这么干。一旦该应用进入了生产阶段,要改起来可就不容易了,因为外面已经有了大量对应用 URL 的引用。

几乎所有的 Angular 项目都会使用默认的 HTML 5 风格。它生成的 URL 更易于被用户理解,它也为将来做服务端渲染预留了空间。

在服务器端渲染指定的页面,是一项可以在该应用首次加载时大幅提升响应速度的技术。那些原本需要十秒甚至更长时间加载的应用,可以预先在服务端渲染好,并在少于一秒的时间内完整呈现在用户的设备上。

只有当应用的 URL 看起来像是标准的 Web URL,中间没有 hash(#)时,这个选项才能生效。

除非你有强烈的理由不得不使用 hash 路由,否则就应该坚决使用默认的 HTML 5 路由风格

angular-cli里默认使用的是HTML5 History 模式,

url类似 http://localhost:4200/task-list,

URL看着比较舒服,比较美观。在路由页面刷新就会404

还有一种模式是hash模式,

url类似 http://localhost:4200/#/task-list,

跳转到路由页面再刷新还是会停留在当前路由。

开启hash路由模式方法

app.module.ts中引入并provider






上一篇:sql server 查询当前系统时间的前几天
下一篇:CSS中 设置 height:100% 无效的解决方案
码农网,只发表在实践过程中,遇到的技术难题,不误导他人。
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

免责声明:
码农网所发布的一切软件、编程资料或者文章仅限用于学习和研究目的;不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负。本站信息来自网络,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容。如果您喜欢该程序,请支持正版软件,购买注册,得到更好的正版服务。如有侵权请邮件与我们联系处理。

Mail To:help@itsvse.com

QQ|手机版|小黑屋|架构师 ( 鲁ICP备14021824号-2 )|网站地图

GMT+8, 2024-6-1 13:43

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表