vue 中 params 用于訪問路由定義中的命名參數(如 /user/:id 的 :id),而 query 用于訪問 url 查詢字符串中的附加參數(如 /search?q=vue 中的 q)。
Vue 中 params 和 query 的區別
前言:
Vue.js 中的 params 和 query 是用于訪問 URL 中參數的兩個屬性。兩者都有其獨特的用法和區別。
params
params
參數用于訪問路由定義中聲明的命名路由參數。
這些參數存儲在 $route.params
對象中。
它們通常用于為特定組件提供動態數據,例如用戶 ID 或文章標題。
query
query
參數用于訪問 URL 查詢字符串中的參數。
這些參數存儲在 $route.query
對象中。
它們通常用于從 URL 中傳遞附加信息,例如分頁或排序選項。
區別總結:
特征 | params | query |
---|---|---|
參數來源 | 路由定義中的命名參數 | URL 查詢字符串中的附加參數 |
存儲位置 | $route.params |
$route.query |
用途 | 傳遞動態數據給組件 | 傳遞附加信息給頁面或組件 |
訪問方式 | 可以通過 this.$route.params 訪問 |
可以通過 this.$route.query 訪問 |
示例 |
/user/:id 中的 :id 參數 |
/search?q=<a style="color:#f60; text-decoration:underline;" href="https://www.php.cn/zt/15721.html" target="_blank">vue</a> 中的 q 參數 |
使用場景示例:
params:使用在用戶詳情頁面上,其中 URL 為 /user/123
,其中 params.id
為 123
。
query:使用在文章列表頁面上,其中 URL 為 /articles?page=2&sort=asc
,其中 query.page
為 2
,query.sort
為 asc
。