【Vue】params vs. query | Vue Router

params - 命名的路由,加上参数让路由建立 url

动态的参数前要加上冒号 ":"

let router = new VueRouter({
    routes:[
        {   // 内页
            path: '/pdp/:id', 
            name: 'product-detail-page',
            component: DetailPage
        }
    ]
})

DetailPage 组件里可以任意调用 vue router

methods:{
    watchContent(){
        this.$router.push({ name:'product-detail-page', params:{id:'computer'} });
    }
},

url 结果是 /pdp/computer /pdp/123 /pdp/acb123 都会导到 product-detail-page 页面,因为上述路径都符合 /pdp/+一组字串。
若要过滤 id 总是呈现数字,就可以用正规表达式来筛选传入的 id ,这样符合全是数字的 id 时,才会被导引到此页面。

query - 带查询参数

methods:{
    watchContent(){
        this.$router.push({ name:'product-detail-page', query:{filter:'关键字查询'} });
    }
},

url 结果是 product-detail-page?filter=关键字查询

参考来源:
https://next.router.vuejs.org/guide/essentials/dynamic-matching.html


<<:  如何有效解决Mac机越来越慢[教学]

>>:  30天Python自学:Day01

D20 - 「呐,你想要成为什麽颜色?」:将色彩传下去

这个章节来实作彩球组件,让使用者可以选择颜色。 建立颜色控制器 建立 color-ball.vue ...

Webview问题集(下)-常用功能

缘由: APP开发使用Webview也是很常见的,有些功能常用但难度不高,有些功能则需要与网页端配合...

JS 33 - 在触控装置侦测手势的滑动方向!

大家好! 今天我们要实作在触控装置中侦测手势的方向。 我们进入今天的主题吧! 备注:前几天和今天的范...

【Day 06】LeetCode:Two Sum ( 用 JavaScript 学演算法 )

我们继续透过 LeetCode #1 Two Sum 来实际感受解决问题的过程 ( 题目连结 ) 一...

Trouble with Distributed Systems (2) - Unreliable Networks

不可靠的网路 (Unreliable Networks) 从 2020 Day 21 - Repli...