vuejs的路由问题

前端面试官问我vuejs有几种路由?我说2种,嵌套路由和动态路由。然后他很惊讶的看着我问:动态路由?我有点懵了。请问他想要的答案是什么?我说错了吗?

阅读 1.5k
2 个回答

我也不明白。
当然也许他想问的是路由模式以及前端路由的原理:那就是两种模式history和hash。但这又不是vue.js独有的,只是vue-router提供了路由模式的配置而已。

至于动态路由和嵌套路由,好像并没有这样分类的。

我觉得应该是问的路由模式,路由模式应该有三种

1 hash
  使用 URL 的 hash 来模拟一个完整的 URL,于是当 URL 改变时,页面不会重新加载,其显示的网路路径中会有 “#” 号。这是最安全的模式,因为他兼容所有的浏览器和服务器。

http://localhost:8080/#/home

2 history
美化后的hash模式,会去掉路径中的 “#”。依赖于Html5 的history,pushState API,所以要担心IE9以及一下的版本,感觉不用担心。

http://localhost:8080/home

3 abstract
适用于所有JavaScript环境,例如服务器端使用Node.js。如果没有浏览器API,路由器将自动被强制进入此模式。

设置 三选一
const router = new VueRouter({routes, mode:'hash|history|abstract'})

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题