Vue ——09、路由模式,404和路由勾子

路由嵌套,参数传递及重定向

    • 一、路由模式(有#号,跟没#号)
    • 二、404
    • 三、路由勾子
    • 四、在钩子函数中使用异步请求
        • ————————
        • 创作不易,如觉不错,随手点赞,关注,收藏(* ̄︶ ̄),谢谢~~

一、路由模式(有#号,跟没#号)

路由模式有两种

  • hash:路径带 # 符号,如 http://localhost/#/login
  • history:路径不带 # 符号,如 http://localhost/login

1、修改路由配置,代码如下:

export default new Router({
  mode: 'history',			//添加这一行
  routes: [
  ]
});

地址没有 # 号了
Vue ——09、路由模式,404和路由勾子_第1张图片

二、404

1.创建一个NotFound.vue视图组件

<template>
    <div>
      <h1>404,你的页面走丢了h1>
    div>
template>
<script>
    export default {
        name: "NotFound"
    }
script>
<style scoped>
style>

2.修改路由配置index.js

import NotFound from '../views/NotFound'


{
   path: '*',
   component: NotFound
}

3.当访问一个不存在的请求时

Vue ——09、路由模式,404和路由勾子_第2张图片

三、路由勾子

beforeRouteEnter:在进入路由前执行
beforeRouteLeave:在离开路由前执行

Vue ——09、路由模式,404和路由勾子_第3张图片

参数说明:

  • to:路由将要跳转的路径信息
  • from:路径跳转前的路径信息
  • next:路由的控制参数
  • next() 跳入下一个页面
  • next(’/path’) 改变路由的跳转方向,使其跳到另一个路由
  • next(false) 返回原来的页面
  • next((vm)=>{}) 仅在 beforeRouteEnter 中可用,vm 是组件实例

看一下效果

Vue ——09、路由模式,404和路由勾子_第4张图片

四、在钩子函数中使用异步请求

1、首先,安装 axios

cnpm install --save vue-axios

2、main.js引用 Axios

import axios from 'axios'
import VueAxios from 'vue-axios'


Vue.use(VueAxios, axios)

3、在static下创建一个json数据文件

Vue ——09、路由模式,404和路由勾子_第5张图片
4、接着我们在路由之前,拿到数据

Vue ——09、路由模式,404和路由勾子_第6张图片
5、看一下效果,没有问题

Vue ——09、路由模式,404和路由勾子_第7张图片

————————

创作不易,如觉不错,随手点赞,关注,收藏(* ̄︶ ̄),谢谢~~

你可能感兴趣的:(Vue,vue.js,javascript,ecmascript,路由模式,history)