项目路由配置
安装 vue-router
vue-router
更多使用详情查看:官方文档
sh
npm install vue-router@4
项目路由配置文件夹结构
主要为路由规则 和 页面视图:
sh
project root/
|-- src/
|-- router/
|-- index.ts
|-- routes.ts // 常量路由
|-- views/
|-- 404/
|-- index.vue
|-- home/
|-- index.vue
|-- login/
|-- index.uve
index.ts
路由规则
ts
// @/router/index.ts
// 通过vue-router 插件实现模板路由配置
import { createRouter, createWebHashHistory } from 'vue-router'
// 引入常量路由
import { constantRoute } from './routes'
// 创建路由器
let router = createRouter({
// 路由模式 hash
history: createWebHashHistory(),
// 下面为拆分后的使用
routes: constantRoute,
// 滚动行为
scrollBehavior() {
return {
left: 0,
top: 0,
}
},
})
export default router
通过拆分文件,让其不臃肿好维护
ts
// @/router/routes.ts
// 对外暴露配置的路由
export const constantRoute = [
{
path: '/login',
component: () => import('@/views/login/index.vue'),
},
{
// 登录成功后的路由
path: '/',
component: () => import('@/views/home/index.vue'),
name: 'layout',
},
{
path: '/404',
component: () => import('@/views/404/index.vue'),
name: '404',
},
{
path: '/:pathMatch(.*)*',
redirect: '/404',
name: 'Any',
},
]
注册路由
在main.ts
中注册路由:
ts
// main.ts
// 引入路由
import router from './router'
// 注册模板路由
app.use(router)
使用路由
举例在 App.vue
中使用路由:
vue
<template>
<div>
<h1>svg 测试</h1>
<!-- 使用路由 -->
<router-view></router-view>
</div>
</template>
<script lang="ts" setup></script>
<style scoped lang="scss">
div {
h1 {
color: $color;
}
}
</style>