vue router 兩種跳轉push和replace對比區別


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來獲取參數:

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM