1 Star 0 Fork 0

Honley/vue3-vant4-mobile

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
贡献代码
同步代码
取消
提示: 由于 Git 不支持空文件夾,创建文件夹后会生成空的 .keep 文件
Loading...
README
MIT


license version repo-size languages issues

vue3-vant4-mobile

Stargazers over time

Stargazers over time

介绍

👋👋👋 Vue3 Vant4 Mobile 使用了最新的 Vue3.4Vite5Vant4PiniaTypeScriptUnoCSS 等主流技术开发,集成 Dark Mode(暗黑)模式和系统主题色,并且持久化保存,集成 Mock 数据,顺便写了登录/注册/找回密码 页面(包括逻辑),只需替换你的 API 即可,另外页面均可以 <keep-alive>,随便写了个包含 NavBarTabBar 的 Layout,集成了 AxiosuseEChartsIconSvg

项目使用了 antfu 大佬的 antfu/eslint-config 作为代码规范检查工具,摆脱繁琐无聊的 Eslint 配置,配合 cz-gitlint-stagedsimple-git-hooks可对暂存区代码提交校验,代码风格不合格可打断提交,保证多人协作开发时上游 Git 库的干净。

现在你可以在此之上直接开发你的业务代码!希望你能喜欢!

截图预览

登录页面 主控台页(首页)
消息页(图标页) 我的(我的信息页面)
展开预览暗黑模式下的界面截图
登录页面(暗黑模式) 主控台页(暗黑模式)
我的页面(暗黑模式) 主题设置页面(暗黑模式)

线上预览

预览链接:https://vvmobile.xiangshu233.cn/

账号:admin,密码:123456

账号:test,密码:123456

或者扫描以下二维码进入手机演示

基础知识

  • Vite - 熟悉 Vite 特性
  • Vue3 - 熟悉 Vue3 基础语法
  • Vant4 - 掌握 vant4 组件基本使用
  • Pinia - 熟悉 Pinia 特性
  • TypeScript - 熟悉 TypeScript 基本语法
  • Vue-Router-Next - 熟悉 Vue-Router基本使用
  • ECharts5 - 熟悉 Echarts 基本使用
  • Iconify - 本项目推荐图标库,当然你也可以使用 IconSvg
  • Postcss-Mobile-Forever - 了解手机端 pxviewport 插件的作用
  • Lodash-es - JS高性能工具库
  • UnoCSS - 原子化 CSS,熟悉 UnoCSS 基本使用
  • Mock.js - 了解 Mockjs 基本语法
  • ES6+ - 熟悉 ES6 基本语法

关于 Icon 的使用

项目使用 unocssicon 预设 作为系统 Icon

请遵循以下约定使用图标

  • <prefix><collection>-<icon>
  • <prefix><collection>:<icon>
<!-- A basic anchor icon from Phosphor icons -->
<div class="i-ph-anchor-simple-thin" />
<!-- An orange alarm from Material Design Icons -->
<div class="i:mdi:alarm" />

点击这里获取所有可用的图标,找到想要的图标后点击复制 icon name 到 class 里即可

[!WARNING] 记得加 i-xxx 前缀,从 icones 复制的 icon name 是没有 i- 前缀的

更多详细使用请看 https://unocss.dev/presets/icons#icons-preset

环境准备

本地环境需要安装 PnpmNode.jsGit

  • 推荐使用 pnpm>=8.15.4,否则依赖可能安装不上,打包报错等问题。
  • Node.js 版本要求20.x以上,这里推荐 ^20.9.0 || >=21.7.1

VS Code 配套插件

如果你使用的 IDE 是 VS Code(推荐)的话,可以安装以下工具来提高开发效率及代码格式化

VS Code Eslint 支持(自动修复)

安装 VS Code ESLint extension

将以下设置添加到您的 .vscode/settings.json 中:

{
  // Enable the ESlint flat config support
  "eslint.experimental.useFlatConfig": true,

  // Disable the default formatter, use eslint instead
  "prettier.enable": false,
  "editor.formatOnSave": false,

  // Auto fix
  "editor.codeActionsOnSave": {
    "source.fixAll.eslint": "explicit",
    "source.organizeImports": "never"
  },

  // Silent the stylistic rules in you IDE, but still auto fix them
  "eslint.rules.customizations": [
    { "rule": "style/*", "severity": "off" },
    { "rule": "format/*", "severity": "off" },
    { "rule": "*-indent", "severity": "off" },
    { "rule": "*-spacing", "severity": "off" },
    { "rule": "*-spaces", "severity": "off" },
    { "rule": "*-order", "severity": "off" },
    { "rule": "*-dangle", "severity": "off" },
    { "rule": "*-newline", "severity": "off" },
    { "rule": "*quotes", "severity": "off" },
    { "rule": "*semi", "severity": "off" }
  ],

  // Enable eslint for all supported languages
  "eslint.validate": [
    "javascript",
    "javascriptreact",
    "typescript",
    "typescriptreact",
    "vue",
    "html",
    "markdown",
    "json",
    "jsonc",
    "yaml",
    "toml"
  ]
}

使用

# 获取项目代码
git clone https://github.com/xiangshu233/vue3-vant4-mobile.git

# 安装依赖
cd vue3-vant4-mobile
pnpm install

# 运行
pnpm dev

# 打包
pnpm build

Git 提交规范

提交规范

参考 vue 规范 (Angular)

  • feat 增加新功能
  • fix 修复问题/BUG
  • style 代码风格相关无影响运行结果的
  • perf 优化/性能提升
  • refactor 重构
  • revert 撤销修改
  • test 测试相关
  • docs 文档/注释
  • chore 依赖更新/脚手架配置修改等
  • workflow 工作流改进
  • ci 持续集成
  • types 类型定义文件更改
  • wip 开发中

提交校验

[!TIP] 关于前端工程化 配置构建代码检查工作流 不了解的可以看下面这两篇文章了解下

前端工程化配置(上) 构建代码检查工作流

前端工程化配置(下) 规范仓库提交记录 commitlint + commitizen + cz-git + 配置

[!IMPORTANT] 首次 clone 代码 pnpm install 后 需要执行以下命令来更新git hooks

# Update ./git/hooks
npx simple-git-hooks

本项目提交规范校验使用 simple-git-hooks 作为 git hooks,使用 cz-git 作为 commitlint commitizen。

[!IMPORTANT]

# Global install commitizen CLI
npm install -g commitizen

先全局安装 commitizen ,之后更改的代码若想要使用 Commitlint 规范提交需要将文件(放入暂存区) git add 后,控制台执行 cz 命令开启 cz-git CLI 。若想直接执行 git commit 需要满足上面提交规范才能通过校验,否则将会被 Git Hook 打断提交

simple-git-hooks 和 husky 都是用于管理 Git 钩子(Git hooks)的工具,但它们有一些区别:

simple-git-hooks:

  • 简介: simple-git-hooks 是一个轻量级的工具,用于管理和运行Git钩子。
  • 特点:
    • 提供了简单的配置方式来定义和运行 Gi 钩子。
    • 适合于小型项目或对 Git 钩子需求不复杂的项目。
    • 相对较少的功能和配置选项。
    • 使用场景: 适用于简单的项目或对 Git 钩子管理需求不高的情况。

husky:

  • 简介: husky 是一个功能强大的工具,用于管理 Git 钩子,并且在项目中被广泛使用。
  • 特点:
    • 提供了丰富的配置选项和灵活性,可以精细地控制 Git 钩子的行为。
    • 支持在不同的 Git 钩子事件上运行自定义脚本。
    • 可以与其他工具(如linters、测试框架等)集成,实现更复杂的工作流。
    • 使用场景: 适用于需要灵活配置和管理 Git 钩子的项目,尤其是大型或复杂的项目。
// package.json
{
  "simple-git-hooks": {
    // 对暂存区执行 eslint --fix
    "pre-commit": "pnpm lint-staged",
    // 对提交信息进行校验
    "commit-msg": "npx --no-install commitlint --edit $1"
  },

  "lint-staged": {
    "*": "eslint --fix"
  }
}

浏览器支持

本地开发推荐使用Chrome 80+ 浏览器

支持现代浏览器, 不支持 IE

Edge IE Edge Edge Firefox Firefox Chrome Chrome Safari Safari
not support last 2 versions last 2 versions last 2 versions last 2 versions

维护者

@xiangshu233

LICENSE

MIT

MIT License Copyright (c) 2022 傲慢或香橙 Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

简介

暂无描述 展开 收起
README
MIT
取消

发行版

暂无发行版

贡献者

全部

近期动态

不能加载更多了
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
1
https://gitee.com/honley/vue3-vant4-mobile.git
git@gitee.com:honley/vue3-vant4-mobile.git
honley
vue3-vant4-mobile
vue3-vant4-mobile
main

搜索帮助