在學(xué)習(xí)《vue技術(shù)棧開發(fā)實(shí)戰(zhàn)》中beforeRouteUpdate沒有觸發(fā)router.js代碼import Home from '@/views/Home.vue'export default [
{
path: '/',
name: 'home',
component: Home
},
{
path: '/argu/:name',
component: () => import( '@/views/argu.vue'),
props: true
},
{
path: '/about',
name: 'about', // route level code-splitting
// this generates a separate chunk (about.[hash].js) for this route
// which is lazy-loaded when the route is visited.
component: () => import(/* webpackChunkName: "about" */ '@/views/About.vue')
}
]argu.vue代碼<template>
<div>
{{ name }} </div></template><script>export default { props: { name: { type: String, default: 'apple'
}
},
beforeRouteUpdate (to, from, next) { console.log(to.name,from.name)
next()
}
}</script>訪問頁面從http://10.0.0.150:8080/argu/apple跳轉(zhuǎn)到http://10.0.0.150:8080/argu/banana,頁面顯示發(fā)生了變化,但是在console沒有輸出,beforeRouteUpdate未被觸發(fā),新手求解惑,謝各位大神
2 回答

嚕嚕噠
TA貢獻(xiàn)1784條經(jīng)驗(yàn) 獲得超7個(gè)贊
beforeRouteUpdate的觸發(fā)是在動(dòng)態(tài)路由情形下,比如 path: '/user/:userName' 這條路由,當(dāng)頁面不變更只動(dòng)態(tài)的改變參數(shù)userName時(shí),beforeRouteUpdate便會(huì)觸發(fā)

縹緲止盈
TA貢獻(xiàn)2041條經(jīng)驗(yàn) 獲得超4個(gè)贊
測試發(fā)現(xiàn)是因?yàn)閞outer注冊時(shí),使用history模式,直接在瀏覽器跳轉(zhuǎn)不會(huì)觸發(fā),使用js修改路由器則會(huì)觸發(fā);使用hash模式則都會(huì)觸發(fā),具體原因未明
添加回答
舉報(bào)
0/150
提交
取消