Vue项目如何打包成移动端APP

 更新时间:2023年12月19日 12:25:30   作者:百里狂生  
这篇文章主要介绍了Vue项目如何打包成移动端APP,本文通过图文示例相结合给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧

Vue项目打包成移动端APP

需要准备的工具:Hbuilder

首先打包vue到dist目录

npm run build

然后再Hbuilder中打开dist目录

首先可以看到dist目录的图片是一个 W 字样的图标,表示这是一个 web项目

然后将dist包含的 web项目 转换为 移动 APP项目

 此时可以看到dist目录的文件图标由 W 变成了 A,说明此时的web项目已经变成了移动APP项目 ,而且此时生成了一个新的文件manifest.json

下面要做的就是在manifest.json中配置移动APP所需要的配置项

应用信息配置

appid需要登录后才能获取

图标配置

启动图片

SDK配置

模块权限配置

页面引用关系

页面引用关系分析并不是完全正确的,对于未被检测到文件需要手动添加到打包项目中去

代码视图

此视图中会显示所有的配置信息

前几步配置完成后,就可以在手机上进行真机调试了

首先使用usb数据线连接自己的手机,然后将手机设置为开发者模式中的USB调试模式

接下来就是启动Hbuilder真机调试了

连接后,会在手机上自动安装一个HbuilderAPP,用于真机调试

真机测试没有问题,就可以进行下一步---》打包apk了

菜单栏点击【发行】【云打包-打原生安装包】

最后将apk安装包安装到手机上就可以正常使用了

Vue打包成.apk安装的过程中遇到的问题

问题1:打包成的apk在真机上显示空白界面

原因:项目文件路径引用错误,导致文件加载为404

vue打包后的文件时存在于dist目录下的,也就是说dist目录作为根目录。

在dist目录中启动一个本地服务其访问地址为http://localhost:8080/index.html,即可访问首页dist目录下的index.html文件并加载对应的js,css文件,也就是说文件启动根目录是和dist目录中的index.html是平级的。

- dist
-- css
-- img
-- js
-- index.html
-- 启动的根目录

而打包成apk文件后在真机上测试,其访问的地址为http://localhost:8080/dist/index.html,多了一层dist,导致页面空白,加载的文件为404找不到,也就是说打包后的启动目录的根目录是个dist平级的不是和dist目录中的index.html平级。

- dist
-- css
-- img
-- js
-- index.html
- 启动的根目录

 解决方法:

在vue打包成dist文件前,修改vue.config.js配置文件,将打包文件的资源文件更改为当前目录下的绝对路径

mudule.exports = {
    // publicPath: '/',
    publicPath: './'
}

问题2:首屏展示后,路由无法跳转,点击无效

原因:文件动态加载的资源地址404找不到

因为动态加载的资源地址为http://localhost:8080/css/xxx.css和http://localhost:8080/js/xxx.js,而实际上文件的资源路径是http://localhost:8080/dist/css/xxx.css和http://localhost:8080/dist/js/xxx.js说加载动态加载的资源均为404

解决方法:

更改vue项目中的路由模型配置:将H5的历史记录模式改为hash模式

import Vue from 'vue'
import VueRouter from 'vue-router'
Vue.use(VueRouter)
const router = new VueRouter({
    // mode: 'history',
    mode: 'hash'
})
export default router

到此这篇关于Vue项目打包成移动端APP的文章就介绍到这了,更多相关vue打包成app内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • vue2路由中router-view不显示的原因及踩坑记录

    vue2路由中router-view不显示的原因及踩坑记录

    这篇文章主要介绍了vue2路由中router-view不显示的原因及踩坑记录,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-04-04
  • Vue3使用watch监听响应式数据变化的方法详解

    Vue3使用watch监听响应式数据变化的方法详解

    在 Vue 3 的组合式 API(Composition API)中,watch 是一个非常核心且强大的工具,用于监听响应式数据的变化并执行相应的副作用操作,本文将结合实际代码示例,深入讲解 watch 的使用方法、参数配置、常见写法及其应用场景,需要的朋友可以参考下
    2026-02-02
  • Vue.js项目中管理每个页面的头部标签的两种方法

    Vue.js项目中管理每个页面的头部标签的两种方法

    这篇文章主要介绍了Vue.js项目中管理每个页面的头部标签的两种方法,需要的朋友可以参考下
    2018-06-06
  • iview日期控件,双向绑定日期格式的方法

    iview日期控件,双向绑定日期格式的方法

    下面小编就为大家分享一篇iview日期控件,双向绑定日期格式的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-03-03
  • 降低vue-router版本的2种解决方法实例

    降低vue-router版本的2种解决方法实例

    vue-router是Vue.js官方的路由插件,它和vue.js是深度集成的,适合用于构建单页面应用,下面这篇文章主要给大家介绍了关于降低vue-router版本的2种解决方法,文中通过实例代码介绍的非常详细,需要的朋友可以参考下
    2022-07-07
  • 详解vue-router和vue-cli以及组件之间的传值

    详解vue-router和vue-cli以及组件之间的传值

    这篇文章主要介绍了详解vue-router和vue-cli以及组件之间的传值,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-07-07
  • Vue3 Radio单选切换展示不同内容实现代码

    Vue3 Radio单选切换展示不同内容实现代码

    这篇文章主要介绍了Vue3 Radio单选切换展示不同内容,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2023-07-07
  • Vue组件通信传递数据的三种方式

    Vue组件通信传递数据的三种方式

    这篇文章主要介绍了Vue组件通信传递数据的三种方式,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习吧
    2023-04-04
  • vue分片上传视频并转换为m3u8文件播放的实现示例

    vue分片上传视频并转换为m3u8文件播放的实现示例

    前端上传大文件、视频的时候会出现超时、过大、很慢等情况,为了解决这一问题,跟后端配合做了一个切片的功能,本文主要介绍了vue分片上传视频并转换为m3u8文件播放的实现示例,感兴趣的可以了解一下
    2023-11-11
  • 老生常谈vue的生命周期

    老生常谈vue的生命周期

    这篇文章主要为大家详细介绍了vue的生命周期,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,希望能够给你带来帮助
    2022-02-02

最新评论