想要将 Vue 打包成 App,要借助一些插件工具,例如:Electron、Cordova 等,或者直接利用开发工具,例如:Android Studio、HBuilderX 等。本文的目的是带大家通过 HBuilder 开发工具对 Vue 项目进行打包。
数字化管理平台
Vue3+Vite+VueRouter+Pinia+Axios+ElementPlus
Vue权限系统案例
个人博客地址
一、大致流程描述
项目整体使用 Vue+HbuilderX(或者Hbuilder) 开发
使用 Vue 来实现基本页面跳转,增删改查等 app 基本功能,
当需要使用到 app 原生功能则使用一些相关的 UI 框架(如:mui、nutui 等)
真机调试
最后通过HbuilderX将vue项目打包成app包
二、对 vue 项目进行打包
2.1 打包前,将 vue.config.js 文件中 base 路径修改为 ./,如图:
import { fileURLToPath, URL } from 'node:url' import { defineConfig } from 'vite' import vue from '@vitejs/plugin-vue' import vueJsx from '@vitejs/plugin-vue-jsx' export default defineConfig({ base:'./', // 如果直接默认打包,打包后静态资源默认为 “/” ,这样会导致找不到静态资源,最后的apk安装以后白屏 plugins: [ vue(), vueJsx(), ], resolve: { alias: { '@': fileURLToPath(new URL('./src', import.meta.url)) } } })
如果直接默认打包,打包后静态资源默认为 “/” ,这样会导致找不到静态资源,最后的apk安装以后白屏
2.2. 将 Vue 项目打包,执行如下命令:
npm run build
打包后的 dist 目录如图
打包以后的index.html文件根目录为 ”./“,其他assets文件夹中的js文件中的静态资源引用都会统一变成 ”./“,可以正确访问。其中index.html如下
三、使用 HBuilderX 将 dist 静态文件打包为移动端 app
- 下载 HBuilderX最新版本,HBuilderX 是绿色软件,免安装
- 在DCloud开发者中心完成账号注册与开发者认证
- 创建5+App项目,默认文件结构如下
- 进入项目文件夹目录,删除文件夹css、img、js,文件index.html,将打包后的 dist 目录中文件拷贝到此文件夹,如下
- HBuilderX软件,运行->运行到内置浏览器,进行测试,测试结果如下
- 根据测试结果,做代码微调
- HBuilderX软件,发行->原生App-云打包,进行 mainfest.json 文件配置,最后按提示与指南进行打包
- manifest.json 配置界面如下:
- apk安装到手机:在HBuilderX软件中,打开unpackage->release->apk,右击apk文件安装到手机
附:使用 Cordova 打包步骤
- 安装 Cordova
npm install -g cordova
创建 Cordova 项目
cordova create my-app
进入项目目录
cd my-app
添加平台,如 Android
cordova platform add android
将 Vue 项目构建成可以部署的代码
npm run build
将构建后的代码拷贝到 Cordova 项目中
p -r dist/* www/
构建并运行 Cordova 项目
cordova build android