Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

前端路由 #13

Open
Pieces312 opened this issue Sep 24, 2020 · 0 comments
Open

前端路由 #13

Pieces312 opened this issue Sep 24, 2020 · 0 comments
Labels

Comments

@Pieces312
Copy link
Owner

Pieces312 commented Sep 24, 2020

前端路由就是根据不同的url显示不同的页面或内容。

前端路由主要是通过Hash(URI 规则中需要带上 #,并且能兼容低版本浏览器)来实现的。由于Web服务不会解析hash,也就是#后的内容都会自动忽略,但JavaScript可以通过window.locahost.hash读取到,将读取到的路径加以解析就可以响应不同路径的逻辑处理。

另一种实现就是html5新增的History API,可以用来操作浏览器的session history。当用户访问某个网站时,Web服务会处理这个请求,然后解析URL中的路径,在Web服务的程序中,该路径对应不同的处理逻辑,程序就会把请求交给该路径的对应的处理逻辑。

优点:

  1. 从性能和用户体验的层面来比较的话,后端路由每次访问一个新页面的时候都要向服务器发送请求,然后服务器再响应请求,这个过程肯定会有延迟。而前端路由在访问一个新页面的时候仅仅是变换了一下路径而已,没有了网络延迟,对于用户体验来说会有相当大的提升。
  2. 在某些场合中,用ajax请求,可以让页面无刷新,页面变了但Url没有变化,用户就不能复制到想要的地址,用前端路由做单页面网页就很好的解决了这个问题

文章链接:https://www.cnblogs.com/yuqing6/p/6731980.html

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

1 participant