query 和 params 之间的区别
- query 要用 path 来引入,params 要用 name 来引入
- 接 收 参 数 时 , 分 别 是
this.$route.query.name
和
this.route 而不是$router)
$route 和$router 的区别
$route 是“路由信息对象”,包括 path,params,hash,query,fullPath,matched,name 等路由信息参数。$router 为 VueRouter 的实例,相当于一个全局的路由器对象,里面含有很多 属 性 和 子 对 象 , 例 如 history 对 象 , 经 常 用 的 跳 转 链 接 就 可 以 用this.router.push 会往 history 栈中添加一个新的记录。返回上一个 history也是使用$router.go 方法
Vue 的路由实现模式
1. hash 模式
在浏览器中符号“#”,#以及#后面的字符称之为 hash,用 window.location.hash 读取。特点:hash 虽然在 URL 中,但不被包括在HTTP 请求中;用来指导浏览器动作,对服务端安全无用,hash 不会重加载页面。
2. history 模式
history 采用 HTML5 的新特性;且提供了两个新方法: pushState(), replaceState()可以对浏览器历史记录栈进行修改,以及 popState 事件的监听到状态变更
'