搭建项目 路由自动化

当新建一个项目的时候,很多人协同开发,如何路由写的很乱就会有造成很多工作量,甚至后期不好维护,因此自动化是有必要的。

一、定义modules文件夹中每一个模块的暴露格式,例如
1、首先将modules中的全部模块都在index中暴露出去

import classManage from './classManage'; // 课程管理
import staticsAnalisis from './staticsAnalisis'; // 统计分
import systemSetting from './systemSetting'; // 系统设置

export default {
  classManage,
  staticsAnalisis,
  systemSetting,
};

2、其次是每一个模块中的格式,主要就是router需要的,path、name等
例如:

import classStatics from './classStatics';
import sunectsStatics from './subjectsStatics';

export default {
  displayNameKey: 'class_manage',
  icon: 'menu_te',
  pages: {
    classStatics,
    sunectsStatics,
  },
};
// 例如这个模块中有俩个页面,那么就需要定义各自的path了

2、例如classStatics.vue中

<script>
export default {
  name: 'class-statistics',
  path: 'class-statistics',
  displayNameKey: 'class-statistics',
};
</script>

二、router中

import Vue from 'vue';
import Router from 'vue-router';
import modules from '@/modules’; // 引进文件夹需要配置
import ErrorPage from '@/components/layout/ErrorPage';

Vue.use(Router);
const routes = [
  {
    path: '/error',
    name: 'error',
    component: ErrorPage,
  },
];
Object.keys(modules).forEach((moduleName) => {
  const pageModule = modules[moduleName];
  if (pageModule.path && pageModule.component) {
    routes.push({
      path: `/${pageModule.path}`,
      name: `${pageModule.displayNameKey}.module_name`,
      component: pageModule.component,
    });
  }

  if (!pageModule.pages) {
    return;
  }
  Object.keys(pageModule.pages).forEach((pageName) => {
    const page = pageModule.pages[pageName];
    routes.push({
      path: `/${pageModule.pages[pageName].path}`,
      component: page,
      children: page.childrenPath || [],
    });
  });
});

至此就实现了路由自动化,后期需要新增模块,只需按照一、中的格式增加即可。也可以按照需要的功能,增加字段。例如路由守卫等。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
对于使用Spring Boot和Vue开发办公自动化系统的实验,我的小结如下: 1. 项目架构:我们选择了前后端分离的架构方式,使用Spring Boot作为后端框架,提供RESTful API服务,而Vue作为前端框架,负责展示和交互。这种架构有助于团队协作和代码复用。 2. 开发流程:我们采用敏捷开发方法,通过迭代的方式逐步完善系统功能。前后端开发人员紧密合作,在需求分析、设计、开发、测试等阶段进行有效的沟通和协作。 3. 后端开发:使用Spring Boot快速搭建项目框架,并利用Spring框架的特性实现业务逻辑。我们采用Maven作为项目管理工具,使用Spring Data JPA进行数据库操作,利用Spring Security实现用户认证和授权。 4. 前端开发:使用Vue CLI快速搭建项目,采用Vue Router实现页面路由,使用Axios进行前后端数据交互。我们还使用了Element UI作为UI组件库,提供丰富的界面组件和样式。 5. 数据库设计:根据系统需求,我们设计了相应的数据库表结构,并利用Spring Data JPA进行持久化操作。同时,我们也进行了数据库的优化,包括索引的设计和查询语句的优化。 6. 系统功能:我们实现了一些基本的办公自动化功能,如用户管理、角色管理、权限管理、请假申请、报销申请等。同时,我们也考虑了系统的可扩展性,通过模块化的方式设计和开发,方便后续的功能扩展和维护。 7. 测试与部署:在开发过程中,我们进行了单元测试和集成测试,确保系统的稳定性和功能完整性。最后,我们使用Docker将系统打包成容器,并部署到服务器上。 总体而言,使用Spring Boot和Vue开发办公自动化系统具有高效、灵活和可扩展的优势。同时,我们也面临了一些挑战,如前后端的协作、性能优化等。但通过团队的努力和合作,我们成功地完成了实验,并取得了良好的效果。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值