问题描述:组件A和组件B 共用子组件C,子组件C通过props拿取A或B的值,从A进入B,页面位置 停留在 上次浏览的位置
解决方案:router/index.js文件,使用scrollBehavior滚动会顶部
import Vue from 'vue';
import Router from 'vue-router';
import Home from 'view/Home';
Vue.use(Router);
export default new Router({
scrollBehavior(to,from,savePosition){ // 在点击浏览器的“前进/后退”,或者切换导航的时候触发。
// to:要进入的目标路由对象,到哪里去 from:离开的路由对象,哪里来 savePosition:会记录滚动条的坐标,点击前进/后退的时候记录值{x:?,y:?}
if(savePosition) {
return savePosition;
}else{
return {x:0,y:0}
}
},
routes: [
{
path: '/a',
name: 'A',
component: A,
redirect: '/index',
meta: {
keepAlive: true// 需要缓存
},
},
{
path: '/b',
name: 'B',
component: B,
redirect: '/index',
meta: {
keepAlive: false // 需要缓存
},
},
]
});