hashHistory和history

hashHistoryhistory是两种常见的路由模式,它们在实现方式和使用方式上有一些区别。

  1. hashHistory:使用URL的哈希部分(#)来实现路由。例如,http://example.com/#/home。它不会发送真正的HTTP请求,而是通过监听URL变化来切换路由。在浏览器中,URL的哈希部分的变化不会导致页面刷新。因此,使用hashHistory可以实现无刷新的路由切换。这种模式适用于不需要服务器端支持的前端单页应用

  2. history:使用HTML5的history API来实现路由。它使用真正的URL路径来表示不同的页面。例如,http://example.com/home。这种模式可以实现更加友好的URL,但在切换路由时会发送真正的HTTP请求,需要服务器端支持。在服务器端,需要配置将所有路径都指向前端应用的入口文件,以便前端路由可以正确处理。这种模式适用于需要与服务器进行交互的应用。

总体而言,hashHistory适用于简单的前端单页应用,不需要服务器端支持;而history适用于复杂的应用,需要与服务器进行交互,并且可以支持更加友好的URL。

你可能感兴趣的:(前端)