{"id":19662430,"url":"https://github.com/qsctech/rop2-web","last_synced_at":"2025-02-27T03:21:12.634Z","repository":{"id":257763187,"uuid":"773758427","full_name":"QSCTech/rop2-web","owner":"QSCTech","description":"求是潮纳新开放系统前端","archived":false,"fork":false,"pushed_at":"2025-02-26T08:16:41.000Z","size":373,"stargazers_count":2,"open_issues_count":6,"forks_count":3,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-02-26T09:25:25.908Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://www.qsc.zju.edu.cn/rop","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"agpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/QSCTech.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-03-18T10:51:22.000Z","updated_at":"2025-02-26T08:16:44.000Z","dependencies_parsed_at":null,"dependency_job_id":"3fa9391a-2a21-4c9b-9f96-923509537042","html_url":"https://github.com/QSCTech/rop2-web","commit_stats":null,"previous_names":["qsctech/rop2-web"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/QSCTech%2Frop2-web","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/QSCTech%2Frop2-web/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/QSCTech%2Frop2-web/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/QSCTech%2Frop2-web/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/QSCTech","download_url":"https://codeload.github.com/QSCTech/rop2-web/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":240971268,"owners_count":19886715,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-11T16:11:16.397Z","updated_at":"2025-02-27T03:21:12.629Z","avatar_url":"https://github.com/QSCTech.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# rop2-web\r\n求是潮rop项目的迭代。\r\n\r\n### 开发指南\r\n- `git clone`本仓库（可选参数`--depth 1`浅克隆）\r\n- `npm i`安装依赖\r\n- `npm start`开启开发服务器\r\n\r\n### 技术栈\r\n- vite 用于热重载、构建生产版本。\r\n- typescript 提供编译时强类型语法检查。\r\n- react 渲染框架。\r\n- sass css的超集。因使用了UI框架，手写样式的频率不应过高。\r\n- react-router-dom 路由框架，构建SPA。\r\n- antd 蚂蚁集团推出的UI框架。\r\n\r\n### 注意事项\r\n- 由于嵌套层级较高，推荐tabSize为2。\r\n- 修改某些文件时，vite将进行热重载(将忽略部分模块导入)。此时导航至其它页面，可能因原型拓展方法丢失导致报错白屏。该问题理论上不会在生产版本出现。\r\n\r\n### 部署\r\n\r\n#### 传统部署方式\r\n\r\n运行编译脚本前，先将环境变量VITE_APIBASE设为完整的API基路径且不以/结尾，如`http://127.0.0.1:8080`\r\n```sh\r\nnpm run build -- --base=/rop\r\n```\r\n将dist文件夹下所有文件使用scp或sftp上传到服务器，并正确修改nginx配置\r\n\r\n#### 容器部署方式\r\n\r\n1. 构建 Docker 镜像\r\n```bash\r\ndocker build -t rop2-web .\r\n```\r\n\r\n2. 运行容器\r\n```bash\r\n# 基本运行方式\r\ndocker run -d -p 80:80 rop2-web\r\n\r\n# 指定 API 地址\r\ndocker run -d -p 80:80 -e APIBASE=http://your-api-server.com rop2-web\r\n```\r\n\r\n环境变量说明：\r\n- `APIBASE`: API 服务器地址，不要以 `/` 结尾，默认值为 `http://127.0.0.1:8080`\r\n\r\n注意：确保 API 服务器允许来自容器的跨域请求\r\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fqsctech%2Frop2-web","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fqsctech%2Frop2-web","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fqsctech%2Frop2-web/lists"}