Vue学习我爱编程

Vue路由之实例配置

2018-06-08  本文已影响1984人  klmhly

1. 参数
mode: 默认vue路由在浏览器的url带“#”,如果想去掉#,就要把mode选项设为‘history’
base: 应用的基路径,所有的路由path前面url会添加一个基路径
linkActiveClass:全局配置 <router-link> 的默认“激活 class 类名”,<router-link>的路径匹配了浏览器url的一部分,就加上这个类。
linkExactActiveClass:精确激活的默认的 class,必须路径完全匹配
scrollBehavior:对于浏览过的网页保留滚动记录
fallback:如果浏览器不支持history上的形式,则默认启用哈希方式
parseQuery:提供自定义查询字符串的解析函数
stringifyQuery:提供自定义查询字符串反解析函数

2. API

# mode
# base
# linkActiveClass
# linkExactActiveClass
# scrollBehavior
# parseQuery / stringifyQuery
# fallback

3. 例子

import Router from 'vue-router'
import routes from './routers'

// 创建路由实例
export default () => {
  return new Router({
    routes,

    // 如果不配置mode,默认浏览器的url带“#”,像这样http://localhost:8000/#/app
    mode: 'history', 

    // 加了base配置,在所有的路由path前面url会添加一个base,像这样http://localhost:8000/base/app
    base: '/base/',

    // 下面两个都用来给<router-link>添加全局类
    // 这个是<router-link>的路径匹配了浏览器url的一部分,就会给<router-link>标签加上active-link这个类
    linkActiveClass: 'active-link', 

    // 这个是<router-link>的路径完全匹配了浏览器url,才会给<router-link>标签加上exact-active-link这个类
    linkExactActiveClass: 'exact-active-link', 

    // 如果浏览器不支持history上的形式,则默认启用哈希方式,也就是带个#
    fallback: true,

    //配置滚动记录
    scrollBehavior (to, from, savedPosition) {
      if (savedPosition) {
        return savedPosition
      } else {
        return { x: 0, y: 0 }
      }

    }
  })
}
上一篇下一篇

猜你喜欢

热点阅读