Vue-Router——一些配置

// import Todo from './../views/todo/todo.vue'
// import Login from './../views/login/login.vue'

export default [
  {
    path: '/',
    redirect: '/app'
  },
  {
    path: '/app',

    // path:'/app/:id',
    props: true, // 把id作为props传递到组件中
    // props:{
    //   id:'456'
    // },
    // props:(route)=>({id:route.query.b}),

    component: () => import('./../views/todo/todo.vue'), // 异步加载,进入路径时才加载
    name: 'app', // 在router-link里可以使用
    beforeEnter: (to, from, next) => {
      console.log('routes beforeEnter')
      next()
    }
    // meta:{
    //   title:'this is app',
    //   description:'asdas'
    // }

    // 子路由
    // children:[
    //   {
    //     path:'test',
    //     component:Login
    //   }
    // ]

  },
  {
    path: '/login',
    component: () => import('./../views/login/login.vue'),
    name: 'login'
  }
]
import routes from './routes.js'
import VueRouter from 'vue-router'

export default () => {
  return new VueRouter({
    routes,
    mode: 'history', // url模式切换
    // base:'/base/'   //url前缀
    // linkExactActiveClass:'', //为当前路径的a标签添加class,精准匹配
    // linkActiveClass:'',
    scrollBehavior (to, from, savedPosition) { // 路由跳转时,滚动条行为设置
      // savedPosition是保存的滚动条位置,to、from是路由对象
      if (savedPosition) {
        return savedPosition
      } else {
        return {x: 0, y: 0}
      }
    },
    fallback: true// 浏览器不支持history的mode时,自动使用hash
    // parseQuery(query){
    //   //查询字符串转换成对象 string=>object
    // },
    // stringifyQuery(obj){
    //   //与上面相反
    // }
  })
}

猜你喜欢

转载自blog.csdn.net/qq_35037977/article/details/80530845