{"id":23346040,"url":"https://github.com/dshuais/vue3-mobile-template","last_synced_at":"2026-05-07T18:38:41.124Z","repository":{"id":154279233,"uuid":"631517751","full_name":"dshuais/vue3-mobile-template","owner":"dshuais","description":"vue3+ts+vite+pinia搭建的移动端H5模板","archived":false,"fork":false,"pushed_at":"2024-08-12T09:06:55.000Z","size":688,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-04-07T17:18:36.972Z","etag":null,"topics":["mobile","pinia","typescript","vant","vite","vue3","vue3-template"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/dshuais.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":"2023-04-23T09:15:43.000Z","updated_at":"2024-08-12T09:06:58.000Z","dependencies_parsed_at":"2024-12-21T07:12:06.686Z","dependency_job_id":"1c54821b-6f3b-485e-ab69-a4ae8b1b7245","html_url":"https://github.com/dshuais/vue3-mobile-template","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/dshuais/vue3-mobile-template","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dshuais%2Fvue3-mobile-template","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dshuais%2Fvue3-mobile-template/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dshuais%2Fvue3-mobile-template/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dshuais%2Fvue3-mobile-template/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/dshuais","download_url":"https://codeload.github.com/dshuais/vue3-mobile-template/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dshuais%2Fvue3-mobile-template/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32751319,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-07T02:14:30.463Z","status":"ssl_error","status_checked_at":"2026-05-07T02:14:29.405Z","response_time":62,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"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":["mobile","pinia","typescript","vant","vite","vue3","vue3-template"],"created_at":"2024-12-21T07:11:59.839Z","updated_at":"2026-05-07T18:38:41.087Z","avatar_url":"https://github.com/dshuais.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003c!--\n * @Author: dushuai\n * @Date: 2023-03-17 09:30:38\n * @LastEditors: dushuai\n * @LastEditTime: 2023-04-23 17:21:10\n * @description: 框架说明\n--\u003e\n# 项目名称\n\n## 项目资料\n\n1. 代码地址：\n2. 需求文档：\n3. 需求规格说明：\n4. 蓝湖设计图：\n\n## 命令\n\n#### 安装\n```\npnpm install\n```\n\n#### 运行\n```\npnpm run dev\n```\n\n#### 打包\n打包命令请查看[这里](#运行以及打包)\n\n#### 环境参数\n全部参数变量请查看[这里](#环境配置参数)\n\n## 提示\n\n1. 推荐使用`pnpm install`安装依赖，因`vite-plugin-imagemin`等有些包在国内不太好安装\n2. `.env.development`、`.env.sit`、` .env.uat`、`.env.production` 需要修改为项目对应环境的配置\n3. `auto-imports.d.ts`、`components.d.ts` 为按需加载（vue、vue-router、pinia、components下组件）自动生成文件，请勿修改且在代码内不要重复导入\n4. `node_modules` 、`mobile` 等非源码文件勿提交到SVN/git，可添加到SVN/git的ignore/.gitignore列表中\n5. 对弹框进行统一管理，弹框组件请根据`/src/components/Popups/popBase.vue`、`/src/hooks/usePopups.ts`内提示使用\n6. 项目内已引入`vite-plugin-imagemin`图片压缩工具，默认在`uat`、`production`环境下开启。注：开启后打包时间会比较长（126张图片将近两分钟），可在配置项`VITE_APP_TINY`关闭，自行在`https://tinypng.com`压缩\n\n## 目录结构\n\n```\n┌─mobile/dist                     打包文件目录\n|─public\n|─src\n│  └─api          \t              业务请求接口\n│  └─assets            \t          存放应用引用的本地静态资源（如图片、序列帧等）的目录\n│     └─img            \t          静态图片文件目录\n│     └─style                     样式文件目录\n│  └─axios            \t          封装axios请求\n|     └─requestCancel.ts          重复请求取消方法\n|     └─requestCode.ts            统一处理请求状态码方法\n│  └─common            \t          公共文件\n│     └─style            \t      公共样式文件目录\n|     └─ts                        公共函数的目录\n│  └─components                   符合vue组件规范的组件目录\n│     └─BaseComponents            基础组件目录\n│         └─BaseLoading.vue       静态资源预加载组件\n│     └─Popups                    弹窗组件目录\n│         └─popBase.vue           弹窗组件使用实例\n│  └─enum                         枚举文件目录\n│  └─hooks                        抽离hooks的文件目录\n│     └─useLogin                  抽离登录方法\n│     └─usePopups                 弹窗统一管理方法的hooks\n│     └─useToast                  toast提示的hooks\n│  └─router                       路由文件\n│  └─stores                       状态管理仓库（pinia）文件目录\n|     └─app.ts                    存放app内状态state的文件\n|     └─appActions.ts             存放操作状态方法action的文件\n|     └─popups.ts                 存放弹窗状态state的文件 按规则使用即可,可不更改\n│  └─typings                      ts类型定义文件目录\n|     └─app.d.ts                  app内数据类型\n|     └─cmb.d.ts                  cmb request/response的数据结构类型定义文件\n|     └─env.d.ts                  自定义npm上没有声明文件包的声明文件\n|     └─global.d.ts               全局window上数据类型\n|     └─request.d.ts              请求的request的数据结构类型定义文件\n|     └─response.d.ts             请求的response.data.data的数据结构类型定义文件\n│  └─utils                        常用的工具类函数文件目录\n|     └─cmbUtil.ts                cmb常用api\n|     └─is.ts                     is类型推断\n|     └─index.ts                  工具方法\n|     └─router.ts                 重写路由跳转\n│  └─views                        路由对应vue文件目录\n|     └─components                抽分页面组件文件目录\n|         └─Home                  首页页面组件\n|     └─index.vue                 首页\n│  └─App.vue                      App根文件\n│  └─auto-imports.d.ts            按需加载api自动生成文件（勿改）\n│  └─components.d.ts              按需加载组件自动生成文件（勿改）\n│  └─componentsInstance.d.ts      统一定义组件类型文件（勿改）\n│  └─main.js                      入口文件\n|─.env.xxx              \t      环境变量配置\n|─.eslintrc-auto-import           自定义按需加载api文件，配置项与auto-imports.d.ts相对\n|─.eslintrc.cjs                   ESLint规则\n│─index.html\n│─package.json\n│─pnpm-lock.yaml\n├─README.md                       项目信息\n├─tsconfig.json                   ts配置文件\n├─tsconfig.app.json               ts配置文件，会覆盖tsconfig\n├─tsconfig.node.json\n├─tsconfig.vitest.json\n├─vite.config.ts                  vite配置\n└─vitest.config.ts\n```\n\n## 环境配置参数\n\n```\n#当前环境\nVITE_NODE_ENV = \"production\"\n\n#判断打包逻辑\nVITE_APP_ENV = \"production\"\n\n#判断预生产（设置预生产顶部跑马灯）\nVITE_APP_PRE_PRODUCTION = \"false\"\n\n#生产环境不需要log\nVITE_APP_LOG = \"true\"\n\n#资源路径\nVITE_APP_RESOURCE_URL = \"xxx\"\n\n#请求接口路径\nVITE_APP_BASE_URL = \"xxx\"\n\n#是否开启Vconsole（生产环境关闭）\nVITE_APP_VCONSOLE_ABLED = \"false\"\n\n#是否开启图片压缩（生产环境打开）\nVITE_APP_TINY = \"true\"\n\n#活动短链\nVITE_APP_CHAIN = \"xxx\"\n\n#活动秘钥\nVITE_APP_KEY = \"xxx\"\n\n#活动商户号\nVITE_APP_CORPNO = \"xxx\"\n\n#分享链接\nVITE_APP_SHARE_URL = \"xxx\"\n\n#降级页\nVITE_APP_ERROR_PAGE_URL = \"xxx\"\n\n#App卡券\nVITE_APP_CARD_URL = \"xxx\"\n\n#H5标题\nVITE_APP_TITLE = \"项目名称\"\n```\n\n## 运行以及打包\n\n```\npnpm run dev    本地启动项目\n\npnpm run sit    测试环境打包\n\npnpm run uat    预生产环境打包\n\npnpm run prod   生成环境打包\n\npnpm run getImg 自动加载assets/img/下静态图片（图片懒加载使用），环境打包命令会自动执行,无需重复执行\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdshuais%2Fvue3-mobile-template","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdshuais%2Fvue3-mobile-template","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdshuais%2Fvue3-mobile-template/lists"}