原文:https://blog.csdn.net/mf_717714/article/details/81945218
首先簡(jiǎn)單來(lái)說(shuō)明一下route的區(qū)別
//$router : 是路由操作對(duì)象,只寫(xiě)對(duì)象
//$route : 路由信息對(duì)象,只讀對(duì)象
params是路由的一部分,必須要在路由后面添加參數(shù)名。query是拼接在url后面的參數(shù),沒(méi)有也沒(méi)關(guān)系。
params一旦設(shè)置在路由,params就是路由的一部分,如果這個(gè)路由有params傳參,但是在跳轉(zhuǎn)的時(shí)候沒(méi)有傳這個(gè)參數(shù),會(huì)導(dǎo)致跳轉(zhuǎn)失敗或者頁(yè)面會(huì)沒(méi)有內(nèi)容。
傳參可以使用params和query兩種方式。
使用params傳參只能用name來(lái)引入路由,即push里面只能是name:’xxxx’,不能是path:’/xxx’,因?yàn)閜arams只能用name來(lái)引入路由,如果這里寫(xiě)成了path,接收參數(shù)頁(yè)面會(huì)是undefined!?。?。
使用query傳參使用path來(lái)引入路由。
params是路由的一部分,必須要在路由后面添加參數(shù)名。query是拼接在url后面的參數(shù),沒(méi)有也沒(méi)關(guān)系。
二者還有點(diǎn)區(qū)別,直白的來(lái)說(shuō)query相當(dāng)于get請(qǐng)求,頁(yè)面跳轉(zhuǎn)的時(shí)候,可以在地址欄看到請(qǐng)求參數(shù),而params相當(dāng)于post請(qǐng)求,參數(shù)不會(huì)再地址欄中顯示。