# 校园新闻管理系统 这是一个基于 Vue 3 + TypeScript + Vite 构建的现代化校园新闻管理系统前端项目。该系统提供了新闻管理、用户中心、AI 对话、学习计划等功能模块。 ## 技术栈 - **框架**: Vue 3.5.22 - **构建工具**: Vite 5.0.0 - **语言**: TypeScript 4.5.5 - **UI 组件库**: Element Plus 2.11.4 - **状态管理**: Vuex 4.1.0 - **路由管理**: Vue Router 4.5.1 - **HTTP 客户端**: Axios 1.7.9 - **PWA 支持**: vite-plugin-pwa ## 功能模块 ### 首页模块 - 横幅管理 - 菜单导航 - 新闻展示 - 推荐内容 - 搜索功能 - 统计数据 ### 系统管理模块 - 用户管理 - 角色管理 - 权限管理 - 部门管理 - 菜单管理 - 文件管理 ### 学习模块 - 课程管理 - 学习计划 - 学习任务 - 学习记录 ### 用户中心模块 - 个人资料 - 浏览记录 - 收藏管理 - 成就系统 - 积分系统 ### AI 助手模块 - 智能对话 - 知识库管理 - 消息管理 - 文件上传 - Agent 配置 ## 项目结构 ``` schoolNewsWeb/ ├── src/ │ ├── apis/ # API 接口定义 │ │ ├── ai/ # AI 相关接口 │ │ ├── homepage/ # 首页相关接口 │ │ ├── study/ # 学习模块接口 │ │ ├── system/ # 系统管理接口 │ │ └── usercenter/ # 用户中心接口 │ ├── components/ # 公共组件 │ ├── directives/ # 自定义指令 │ ├── layouts/ # 布局组件 │ ├── router/ # 路由配置 │ ├── store/ # 状态管理 │ ├── types/ # TypeScript 类型定义 │ ├── utils/ # 工具函数 │ └── views/ # 页面组件 ├── public/ # 静态资源 └── dist/ # 构建输出目录 ``` ## 环境要求 - Node.js >= 14.0.0 - npm >= 6.0.0 或 yarn >= 1.22.0 ## 如何运行 ### 1. 安装依赖 ```bash npm install ``` 或者使用 yarn: ```bash yarn install ``` ### 2. 启动开发服务器 ```bash npm run dev ``` 或者: ```bash npm run serve ``` 开发服务器将在 `http://localhost:8080` 启动,并自动打开浏览器。 ### 3. 后端API配置 项目默认将 `/api` 路径代理到 `http://127.0.0.1:8081/schoolNewsServ`。 如需修改后端地址,请编辑 `vite.config.js` 文件中的 proxy 配置: ```javascript proxy: { '/api': { target: 'http://your-backend-url', changeOrigin: true, rewrite: (path) => path.replace(/^\/api/, '') } } ``` ## 如何构建 ### 构建生产版本 ```bash npm run build ``` 构建产物将输出到 `dist/` 目录。 ### 预览构建结果 ```bash npm run preview ``` ## 代码规范 ### 运行代码检查 ```bash npm run lint ``` 项目使用 ESLint 进行代码检查,配置了 TypeScript 和 Vue 相关的规则。 ## 功能特性 ### PWA 支持 项目已配置 PWA 支持,可以作为渐进式 Web 应用安装到设备上。 ### 权限系统 - 基于角色的权限控制(RBAC) - 自定义指令进行权限校验 - 动态路由生成 ### 响应式设计 - 适配桌面端和移动端 - 现代化的 UI 设计 - 优秀的用户体验 ## 开发说明 ### 路径别名 项目配置了 `@` 作为 `src` 目录的别名,可以这样导入模块: ```typescript import { someFunction } from '@/utils/helper' import MyComponent from '@/components/MyComponent.vue' ``` ### 环境变量 项目定义了以下环境变量: - `process.env.BASE_URL`: `/schoolNewsWeb/` - `process.env.VITE_API_BASE_URL`: `/api` - `process.env.VITE_APP_TITLE`: `校园新闻管理系统` ## 浏览器支持 支持所有现代浏览器的最新两个版本: - Chrome - Firefox - Safari - Edge ## 许可证 私有项目 ## 联系方式 如有问题或建议,请联系项目维护团队。