Vue_Router
一、路由的分离
- 前端路由
- 后端路由
二、Vue中路由的常用配置项
- mode
- routes数组
- Vue路由的内置组件
三、Vue中使用插件的流程
- 安装
cnpm install vue-router -S
- 创建router文件夹并创建index.js文件 
- 引入Vue和vue-router进行配置使用 
import Vue from "vue";
import VueRouter from "vue-router";
Vue.use(VueRouter);
let router = new VueRouter({
})
export default router
- 在入口文件main.js中引入,并挂载到vue上
import Vue from "vue";
import App from "./App.vue";
import router from "./router"
new Vue({
   router,
   render:h=>h(App)
}).$mount("#app")
四、路由跳转的方式有哪些?
五、路由传值
- 动态路由传值
- query传值
- 动态路由和query传值之间的区别
- 路由解耦(只使用于动态路由)
- 编程式导航传值
- 嵌套路由(二级路由)
resolve: {
    extensions: [".vue", ".js"],
    //别名的配置
    alias: {
        "@": path.join(__dirname, "../src"),
        "@views": path.join(__dirname, "../src/views"),
        "@assets": path.join(__dirname, "../src/assets"),
        "@common": path.join(__dirname, "../src/common"),
        "@components": path.join(__dirname, "../src/components"),
        "@pages": path.join(__dirname, "../src/pages"),
        "@router": path.join(__dirname, "../src/router"),
        "@store": path.join(__dirname, "../src/store"),
        "@utils": path.join(__dirname, "../src/utils"),
        "@api": path.join(__dirname, "../src/api"),
    }
},
- 配置二级路由
export default {
    path: "/movie",
    component: () => import('@views/movie'),
    name: "movie",
    meta: {
        flag: true
    },
    children: [
        {
            path: "/movie",
            redirect: "/movie/nowPlaying"
        },
        {
            path: 'nowPlaying',
            component:(resolve)=>require(["@/components/nowPlaying"], resolve),
            name: "nowPlaying",
            meta: {
                flag: true
            },
        },
        {
            path: 'comingSoon',
            component: () => import('@components/comingSoon'),
            name: "coming",
            meta: {
                flag: true
            }
        },
    ]
}
- 异步组件
六、路由的生命周期
- 全局的路由生命周期
- 
beforeEach 
- 
局部的路由生命周期 - beforeRouteEnter进入时(在beforeCreate创建之前)
 - beforeRouteUpdate更新时
 - beforeRouteLeave离开时
 beforeRouterLeave(to,from,next){ var flag = confirm("确定要离开当前页面吗?"); if(flag){ next(); } }










