前言
幾周前,我寫了關(guān)于 Vue 路由的使用和在 Vue 頁面導(dǎo)航的文章。這是在應(yīng)用程序中探索的一個(gè)基本例子。
通常,在將導(dǎo)航構(gòu)建到應(yīng)用程序中時(shí),您會發(fā)現(xiàn)需要將數(shù)據(jù)從一個(gè)頁面?zhèn)鬟f到另一個(gè)頁面。(不通順)例如,您遵循 master-detail 模式,其中您有一個(gè)數(shù)據(jù)列表,通過更深入地挖掘可以獲得關(guān)于列表中特定項(xiàng)的更多信息。
我們將學(xué)習(xí)如何使用路由和 URL參數(shù)以及查詢參數(shù)在 Vue 頁面之間傳遞數(shù)據(jù)。
如果你還沒有讀過我之前的教程或者不熟悉 vue-router 庫,我建議你溫習(xí)一下。
利用 URL 參數(shù)在不同頁面中傳遞數(shù)據(jù)
假設(shè)您有一個(gè) web 應(yīng)用程序,它顯示從某個(gè)數(shù)據(jù)庫獲得的用戶列表。這個(gè)列表可能只包含姓名信息,但是數(shù)據(jù)庫中的數(shù)據(jù)可能包含更多的信息,例如地址、電話等。
在典型的場景中,我們使用主鍵或其他標(biāo)識符維護(hù)這個(gè)用戶列表,并用于在請求詳細(xì)信息時(shí)查詢數(shù)據(jù)庫時(shí)。這樣的值可非常合適作為 URL 參數(shù)在不同頁面?zhèn)鬟f。
為此,目標(biāo)頁面需要獲取到 URL 參數(shù)。在前面的教程基礎(chǔ)上,我們可以將項(xiàng)目 src/router/index.js 中的文件更改為如下所示
import Vue from 'vue' import Router from 'vue-router' import Page1 from '@/components/page1' import Page2 from '@/components/page2' Vue.use(Router) export default new Router({ routes: [ { path: "/", redirect: { name: "Page1" } }, { path: '/page1', name: 'Page1', component: Page1 }, { path: '/page2/:id', name: 'Page2', component: Page2 } ] })