路由模式,hash和history,她是如何在改变界面却不用发起一次新的请求的
时间: 2024-05-17 10:15:36 浏览: 96
在前端路由中,路由模式分为两种:hash 模式和 history 模式。在 hash 模式下,路由信息会被存储在 URL 的 hash 中,即 URL 中的 # 后面的内容。在 history 模式下,路由信息会被存储在 URL 的路径中,即 URL 中的 / 后面的内容。
当用户访问一个新路由时,浏览器会根据当前路由信息去加载对应的组件。在路由信息变化时,前端框架会根据当前路由信息去判断需要加载哪些组件,并将其渲染到页面上,从而实现界面的变化。
在 hash 模式中,当 URL 的 hash 发生变化时,浏览器会自动将变化的 hash 发送到服务器,服务器会返回对应的 HTML 页面,但是浏览器不会刷新整个页面,而是只会刷新页面的一部分,即 hash 后面的内容。这样就实现了在改变界面的同时不用发起新的请求。
在 history 模式中,当 URL 的路径发生变化时,浏览器会自动发送一个 AJAX 请求,请求对应的组件,然后将组件渲染到页面上,同样不用刷新整个页面,从而实现了在改变界面的同时不用发起新的请求。
阅读全文