router.push(location) 會向 history 棧添加一個新的記錄,當用戶點擊瀏覽器后退按鈕時,則回到之前的 URL。
router.replace(location) 它不會向 history 添加新記錄,而是跟它的方法名一樣 —— 替換掉當前的 history 記錄。
傳參的兩種方式
1.使用query
2.使用params
兩者傳參的區別是:
1.query 傳參配置的是path,而params傳參配置的是name,在params中配置path無效
2.query在路由配置時不需要設置參數,而params必須設置(如果不設置刷新后參數丟失)
3.query傳遞的參數會顯示在地址欄中
4.params傳參刷新會無效,query會保存傳遞過來的值,刷新不變
路由配置:
1.query

2.params
params是路由的一部分,必須要有。query是拼接在url后面的參數,沒有也沒關系。
params一旦設置在路由,params就是路由的一部分,如果這個路由有params傳參,但是在跳轉的時候沒有傳這個參數,會導致跳轉失敗或者頁面會沒有內容。
params、query不設置也可以傳參,但是params不設置的時候,刷新頁面或者返回參數會丟失,query並不會出現這種情況
使用this.$route.query 或者this.$route.params來獲取參數: