Vue 搭建移动端 h5 项目步骤

简介

最近团队里的其他前端小伙伴需要自己搭建移动端 h5 项目,没有整体的思路,于是我就写了这个步骤。

提示:(2022-10-28更新)

vue-clivuex官方已经不再更新。
vue-cli建议用 create-vuenpm init vue 替代,或者直接使用vite 创建项目。
vuex建议用pinia替代。

create-vue链接
pinia链接
vite链接

已经搭建好的模板github地址

新版用vite + vue3 + vue-router 4 + pinia + ts +vant 搭建的

准备阶段

  1. 确定项目 ui 框架

    现阶段比较好的 Vue 移动端 ui 框架:vantvuxcube-uiMint-UIMuse UINutUI 等。

  2. 选择css预处理样式语言,(vue-cli 里选择)

    lesssassstylus都可以,vue-cli 3 后的版本对应的webpackloader都是配置好的,只需下载对应的包就好了。使用建议:一般选择的css预处理语言和 ui 框架的预处理语言一致为好,类如vant使用的是less,则项目中优先使用less

  3. 是否需要集成 eslintstylelintprettiergit hookslint-staged,一般建议eslint是必要的,其他不做强制要求,这些都是后面可以自己手动添加的。

  4. 使用 Vue-cli 生成的项目,集成 vuexvue-routercss预处理语言eslint等。

    项目目录

    ├── babel.config.js
    ├── package.json
    ├── public
    │   ├── favicon.ico
    │   └── index.html
    └── src├── App.vue├── assets├── components├── main.js├── router├── store└── views
    

样式和适配

  1. 重置样式

    一般是需要加载reset.css 或者normalize.css,用来重置和保护各大浏览器的样式。一般建议使用normalize.css

  2. 安装并导入准备阶段选择好的 ui 框架

  3. 选择移动端适配方案

    现在主流的适配方案是remvw,老项目用的rem比较多,随着时间的推移,vw的适配方案会占优势。一般建议新项目直接上vw适配方案。

    适配方案链接:

    rem 实现移动端适配

    vw 实现移动端适配

  4. 全局样式定义。全局样式变量定义:颜色,字号,宽度等

工具插件的添加

  1. 请求工具的添加(配合环境变量 .env 配置设置 baseUrl,后文有提到)

    主流的请求库:

    axios(支持 React Native,Node,浏览器)

    fly.js(支持 Node.js 、微信小程序 、Weex 、React Native 、Quick App 和浏览器)。

    一般需要自己根据项目封装,常见的需要封装请求拦截器和响应拦截器。

  2. vuex全局状态的添加,涉及到登陆,全局 ui 状态管理等。

  3. Vue插件的添加,过滤器,混入,钩子等。

  4. 添加vue-router 的导航守卫。 可选

  5. fastclick 解决移动端 300 毫秒延迟问题

  6. vconsole 方便移动端 debug

  7. 其他工具的添加,时间处理,深拷贝,函数节流防抖等。

项目 eslint,stylelint ,prettier 的配置

  1. 配置.eslintrc.js

    一般继承@vue/eslint-config-standard这个插件的,具体的规则需要在rules字段定义

  2. 配置.stylelintrc可选

    一般继承stylelint-config-standard这个插件的,具体的规则需要在rules字段定义

  3. 配置.prettierrc.js

    一般配置

    module.exports = {trailingComma: 'none',tabWidth: 2,semi: false,singleQuote: true,jsxSingleQuote: true,bracketSpacing: true,arrowParens: 'avoid'
    }
    

项目命令和环境变量配置

  1. 根据 webpack 的模式定义环境变量文件,模式可以自己定义

    .env.dev  #测试环境变量文件,不打包的话不用配置
    .env.development #开发环境变量文件
    .env.production #生产环境变量文件
    

    Vue 项目环境变量以VUE_APP开头,特殊项目变量除外。例如:

    .env.development文件

    NODE_ENV=development
    VUE_APP_BASE_API=https://api.ex.com
    VUE_CLI_BABEL_TRANSPILE_MODULES=true
    
  2. 根据上面定义的模式配置 npm 脚本

    package.json 文件

    "scripts": {"serve": "vue-cli-service serve","dev": "vue-cli-service serve","lint": "vue-cli-service lint","build:prod": "vue-cli-service build --mode production","build:dev": "vue-cli-service build --mode dev"
    }
    
  3. gitHooks lint-staged 的配置, 可选

vue.config.js(webpack) 的配置

  1. deServer 的配置,

    常见的端口,代理,是否打开浏览器等。

  2. webpack 的配置

    一般需要配置gzipdrop_console等。

  3. alias 的配置,项目一般会默认设置, 可选

    一般需要配置@:src

  4. 其余的常见配置,可选

    publicPath: './',
    outputDir: 'dist',
    assetsDir: 'static',
    productionSourceMap: false,
    lintOnSave: true
    

Vue 搭建移动端 h5 项目步骤相关推荐

  1. vue实现移动端H5页面截图

    vue实现移动端H5页面截图 1.vue使用html2canvas实现移动端H5页面截图并下载. 2.html2canvas能够实现在用户浏览器端直接对整个或部分页面进行截屏.这个html2canva ...

  2. 移动端H5项目开发遇到的问题

    第一类:架构问题 (1)移动端H5项目可能涉及到微应用等的项目上传的大小限制,视情而定选择较小的依赖包,做好代码压缩混淆,图片处理,用打包工具处理掉依赖包中不需要的代码等. 第二类:兼容性问题 (1) ...

  3. vue+vant 移动端H5 商城项目_01

    文章目录 一.·Rem 布局适配 1. 安装 amfe-flexible 2. px转化rem 3. 全局配置 4. 重置样式表 5. 引入重置样式表 二.组件安装和配置与封装 2.1. 安装less ...

  4. vue+vant 移动端H5 商城项目_04

    文章目录 一.专题页 1. 效果图 2. 专题api 2.Topic.vue 组件 3. 专题源码 二.分类页 2.1. 效果图 2.2. 分类api 2.3. Category.vue 组件 三.购 ...

  5. vue+vant 移动端H5 商城项目_03

    文章目录 一.·首页搜索功能 1. 搜索页面 2. 历史记录和热门搜索组件 3. 搜索框提示列表组件 4. 综合-价格-分类 5. 搜索出的产品展示 6. 异常修复 7. 路由拦截/路由守卫 二.详情 ...

  6. vue+vant 移动端H5 商城项目_02

    文章目录 一.路由规划 1. 新建路由配置 2. 下载vue-router 3. 路由注册 4. 路由基础配置 5. 路由挂载 6. AppTabBar 7. 二.移动端首页 2.1.首页效果 2.2 ...

  7. vue多页面开发_使用VUE进行移动端H5页面开发前准备

    在正式使用Vue进行移动端页面开发前,需要做一些前置工作,以此保证用户在访问页面时看到的东西不会因设备的差异而出现各种不同的效果,比如一个页面在iphone7 plus上显示的很正常,然后切换到了Ip ...

  8. 为element ui+Vue搭建的后台管理项目添加图标

    问题:使用element UI 及Vue 2.0搭建一个后台管理项目,想要在页面中为其添加对勾及叉的图标. 解决方案:问题涉及到为页面添加图标.有两种解决方案. (1)Element官网提供了Icon ...

  9. vue cli创建vue3.0项目步骤

    1.安装node.js(node.js下载地址) 2. 全局安装vue-cli最新版本 npm install -g @vue/cli 安装成功后,可以通过 vue -V 查看下载的@vue/cli版 ...

最新文章

  1. 前端传来的图片并保存_C# 将前端传来的图片文件分别以大图和缩略图保存
  2. 图书馆自动化系统 Evergreen 3.3 发布,迁移到 Angular
  3. java中为什么需要常量和变量的区别_Java中的变量和常量
  4. IDEA中pom.xml中导入spring-boot-starter-thymeleaf报错的解决方案
  5. C语言交换两个数字的三种做法
  6. session 原理
  7. 李维说他跳槽了,那我以后也不是Borland的Fans了?
  8. Collection源码分析(二):LinkedList源码分析
  9. 10种经典机器学习算法——Python版
  10. Intel DPDK 源代码分析
  11. Linux 中动态链接库的版本号以及ldconfig
  12. python判断邮箱格式是否正确_python:校验邮箱格式
  13. 解除Windows XP IIS 10个并发连接数的限制
  14. 春节攻防战的战前谋划-电商必看
  15. Window 开机连接ocsp.globalsign.com
  16. 雅马哈机器人编程讲解_雅马哈机器人RCX编程手册
  17. Sql练习--查询有趣的电影
  18. springboot项目中的 Request method 'POST' not supported问题
  19. MySQL Shell系列——升级检查器
  20. 5S现场管理法(转载)

热门文章

  1. COGNOS10启动服务报错 问题解决
  2. springboot的mvn packing
  3. 3D Item-Pallet-Bin packing problem
  4. 开发工作中使用的命令行
  5. 如何手动运行dll文件(转)
  6. 分布式存储Ceph存储系统RADOS
  7. 已merged的分支继续向该分支提交代码
  8. 微信封禁大量色情账号
  9. 计算机专业毕业生怎么写毕业设计开题报告?
  10. Android_(游戏)打飞机01:前言