1.一级路由切换原则,页面整体切换一级路由
2.先创建一级路由对应的组件
3.router/index.js
import { createRouter, createWebHistory } from 'vue-router'
//1.createRouter创建路由实例
//2.createWebHistory创建history模式的路由
import Login from '@/views/Login/index.vue'//4.导入对应的组件
import Layout from '@/views/Layout/index.vue'
const router = createRouter({
history: createWebHistory(import.meta.env.BASE_URL),
//3.配置path和component对应关系的位置
routes: [//5.配置路径和组件的对应关系//6.路由出口放在App.vue
{
path:'/',
component:Layout
},
{
path:'/login',
component:Login
}
]
})
export default router
4.一级路由内部切换则为二级路由
5.创建二级路由组件
import { createRouter, createWebHistory } from 'vue-router'
//1.createRouter创建路由实例
//2.createWebHistory创建history模式的路由
import Login from '@/views/Login/index.vue'//4.导入对应的组件
import Layout from '@/views/Layout/index.vue'
import Home from '@/views/Home/index.vue'//7.导入二级路由组件
import Category from '@/views/Category/index.vue'
const router = createRouter({
history: createWebHistory(import.meta.env.BASE_URL),
//3.配置path和component对应关系的位置
routes: [//5.配置路径和组件的对应关系//6.一级路由出口放在App.vue
{
path:'/',
component:Layout,
children:[
{
path:'',//8.path置空,当渲染一级路由,置空路径对应的路由也会被渲染
component:Home
},
{
path:'category',
component:Category//9.二级路由对应的路径很组件,不用一开始就渲染的就写上路径//10.给二级路由一个路由出口,在他的一级路由里写
}
]
},
{
path:'/login',
component:Login
}
]
})
export default router