You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
spring-boot-online-exam/frontend/src/router/index.js

21 lines
3.1 KiB

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

// 导入Vue框架的核心库它是整个Vue项目构建的基础后续很多功能的实现如创建组件、使用插件、构建页面等都依赖于Vue提供的各种API和机制是必不可少的核心依赖项。
import Vue from 'vue';
// 导入Vue Router库Vue Router是Vue.js官方的路由管理器用于在单页面应用SPA中实现页面之间的路由切换通过定义不同的路由路径以及对应的组件能够让用户在访问不同的URL时加载相应的页面内容实现页面导航功能。
import Router from 'vue-router';
// 从 '../config/router.config' 文件中导入 'constantRouterMap'从命名推测它应该是一个包含了常量路由信息的数组或者对象里面定义了应用的一些基础的、不会动态变化的路由配置例如首页路由、登录路由等固定的路由规则每个路由配置通常包含路径path、对应的组件component以及其他一些如路由元数据meta等相关信息。
import { constantRouterMap } from '../config/router.config';
// 使用Vue.use()方法将Vue Router插件注册到Vue实例中这样在整个Vue项目里就能使用Vue Router提供的路由相关功能了例如在组件中使用 <router-view> 展示路由对应的组件,使用 <router-link> 来创建路由链接等这是启用Vue Router功能的必要步骤。
Vue.use(Router);
// 导出一个新创建的Vue Router实例作为整个项目的路由配置对象其他模块可以导入这个路由配置来挂载到Vue根实例上从而让整个应用具备路由功能。
export default new Router({
// 设置路由的模式为 'history'这种模式下URL看起来更像传统的多页面应用的URL没有 '#' 符号它使用浏览器的历史记录API来实现路由切换使得页面的URL更加美观、易读且符合搜索引擎优化SEO的要求但需要服务器端进行相应的配置来支持避免出现刷新页面找不到资源等问题。
mode: 'history',
// 设置路由的基础路径它的值通常来自于项目的构建环境配置process.env.BASE_URL例如在项目部署到特定的子路径下时这个基础路径就会发挥作用确保路由能够正确地匹配到对应的资源和页面保证路由功能的正常运行。
base: process.env.BASE_URL,
// 定义滚动行为函数,这里返回的是一个对象 { y: 0 }意味着当路由切换时页面在垂直方向y轴上的滚动位置会被重置为0也就是每次切换路由后页面都会滚动到顶部当然可以根据实际需求修改这个函数来实现更复杂的滚动行为控制比如根据不同路由保存或恢复滚动位置等。
scrollBehavior: () => ({ y: 0 }),
// 将前面导入的 'constantRouterMap' 作为路由配置的 routes 属性值也就是把预定义好的那些常量路由信息添加到路由配置中让Vue Router知道有哪些路由路径以及对应的组件等信息以便在用户访问不同URL时能够正确地匹配并加载相应的页面组件。
routes: constantRouterMap
})