import Vue from 'vue'
import Router from 'vue-router'
import Home from '@/pages/home/Home'
import City from '@/pages/city/City'
import Detail from '@/pages/detail/Detail'
Vue.use(Router)
export default new Router({
routes: [{
path: '/',
name: 'Home',
component: Home
}, {
path: '/city',
name: 'City',
component: City
}, {
path: '/detail/:id',
name: 'Detail',
component: Detail
}],
scrollBehavior (to, from, savedPosition) {
return { x: 0, y: 0 }
}
})
這樣會在首頁一次性加載所有邏輯代碼,
當(dāng)app.js文件比較大時,用異步組件實現(xiàn)按需加載
export default new Router({
routes: [{
path: '/',
name: 'Home',
component: () => import('@/pages/home/Home')
}, {
path: '/city',
name: 'City',
component: () => import('@/pages/city/City')
}, {
path: '/detail/:id',
name: 'Detail',
component: () => import('@/pages/detail/Detail')
}],
scrollBehavior (to, from, savedPosition) {
return { x: 0, y: 0 }
}
})
使用前端路由,當(dāng)切換到新路由時,想要頁面滾到頂部,或者是保持原先的滾動位置,就像重新加載頁面那樣。
const router = new VueRouter({
routes: [...],
scrollBehavior (to, from, savedPosition) {
// return 期望滾動到哪個的位置
}
})