前端路由

前端路由主要是通过vue-router,看似是页面之间的而跳转,其实可以简单地理解为div之间的跳转,全部都是div的动态切换。

页面切换,只需要请求数据,关注接口数据的改变即可。不会再去重新请求js文件及css文件

新的单页应用却是质的不同。开发的时候,进行组件化开发,所有的样式和功能都能封装为一个独立的组件,复用性、独立性都非常好,而且降低耦合。最关键的是,在打包发布的时候,

整个前端项目只有一个js文件,一个html文件。页面只有在第一次进入的时候会请求一次js和html,后面所有的页面跳转及渲染,都只是异步的数据请求。这种用户体验可以说是质的提升。

Hash模式

hash模式利用的是浏览器不会对#号后面的路径对服务端发起路由请求。也即在浏览器里输入如下这两个地址:http://localhost/#/user/1http://localhost/其实到服务端都是去请求http://localhost这个页面的内容。

而前端的router库通过捕捉#号后面的参数、地址,来告诉前端库(比如Vue)渲染对应的页面。这样,不管是我们在浏览器的地址栏输入,或者是页面里通过router的api进行的跳转,都是一样的跳转逻辑。所以这个模式是不需要后端配置其他逻辑的,只要给前端返回http://localhost对应的html,剩下具体是哪个页面,就由前端路由去判断便可。

自我理解:前端路由vue-router获取##后面的路径,页面显示不需要每次都请求后端:后端只返回一次http://localhost,剩下的前端跳转跟后端没有关系,【浏览器地址栏输入路由就可以跳转】【div之间的跳转,与后端数据无关】

History模式

不带#号的路由,比如http://localhost/user/1,这个URL是会向后端发起一个get请求的。后端路由表里如果没有配置相应的路由,那么自然就会返回一个404了,

那么很多人会问了,那为什么我在开发模式下没问题呢?那是因为vue-cli在开发模式下帮你启动的那个express开发服务器帮你做了这方面的配置。理论上在开发模式下本来也是需要配置服务端的,只不过vue-cli都帮你配置好了,所以你就不用手动配置了。


原文链接:https://blog.csdn.net/liangcha007/java/article/details/84617198

hash模式  和  history模式   都不会向后端发请求

原文地址:https://www.cnblogs.com/maibao666/p/13230152.html