浅谈vue项目利用Hbuilder打包成APP流程,以及遇到的坑


Posted in Javascript onSeptember 12, 2020

1.打包项目

期间遇到的坑,提前说下,避免重复工作。

1.1打包的app出现白屏。

出现原因:路径不对,需要改config\index.js

解决办法:修改打包的路径。

浅谈vue项目利用Hbuilder打包成APP流程,以及遇到的坑

1.2点击页面跳转不了,报 Loading chunk 2 failed. 等错误。

出现原因:不能用history配置路由,要用hash

解决办法:修改路由mode属性为hash。

浅谈vue项目利用Hbuilder打包成APP流程,以及遇到的坑

1.3.点手机物理按钮,直接退出程序。

出现原因:无理返回键直接用监听不到路由,会直接退出程序。

解决办法:可以引入mui,就能正常使用了。

1.在webpack.base.conf.js里面引入mui。(图一)

2.下载mui相关文件,在main.js里面引入。(若需要使用mui其他方法,请自行查阅资料)(图二)

3.这个时候,引入mui可能会报错,我们需要修改一些文件。(图三)

浅谈vue项目利用Hbuilder打包成APP流程,以及遇到的坑

(图一)

浅谈vue项目利用Hbuilder打包成APP流程,以及遇到的坑

(图二)

浅谈vue项目利用Hbuilder打包成APP流程,以及遇到的坑

(图二)

浅谈vue项目利用Hbuilder打包成APP流程,以及遇到的坑

浅谈vue项目利用Hbuilder打包成APP流程,以及遇到的坑

(图三)

2.Hbuilder发布

2.1创建项目5+App项目

浅谈vue项目利用Hbuilder打包成APP流程,以及遇到的坑

2.2 替换文件

先删除默认的css、img、js、index.html等无用默认文件。再将打包好的dist文件夹下的static和index.html文件,放至新建的项目下。

相关app的配置可自行在manifest.json中修改,这里不做详细说明。

浅谈vue项目利用Hbuilder打包成APP流程,以及遇到的坑

2.3利用云打包发布APP

如有证书,就填写证书等信息,若没有可临时用Dcloud公用证书。

填完信息,点击打包即可,之后就等待打包生成app的下载链接,进行下载安装啦。

浅谈vue项目利用Hbuilder打包成APP流程,以及遇到的坑

浅谈vue项目利用Hbuilder打包成APP流程,以及遇到的坑

个人记录~

补充知识:记录 vue项目打包放入 hbuilder 做app真机测试时 无法请求后台服务接口

1.因为发布app时 vue开发模式下配置的跨域是无效的,打包后会找不到接口

例如下面是之前的错误版:

'/propertyCmsAPI': {
    target: 'http://192.168.1.111:9001/',
    changeOrigin: true,
    pathRewrite: {
     '^/propertyCmsAPI':''
    }
   },

在使用时:

export const logout = params =>{return axios.post(`/propertyCmsAPI/notIntercept/logout`,params)};

这种方法在网页端打包是没有问题的,只需要在nginx 里配置下跨域就可以访问。

但是在做app时这样是访问不到数据的,因为不存在跨域的说法,打包成app后实际访问的路径就是 /propertyCmsAPI/notIntercept/logout ,这样会找不到接口,要采用绝对路径的方式,

例如:http://192.168.1.111:9001/notIntercept/logout,这样才能访问,不管你怎样配置管理你的请求api,这个是必须得,

下面是我更改后的做法正确版,完全适用:

let propertyCmsAPI = "http://112.74.126.167:9001";//打包APP时使用

// let propertyCmsAPI = "propertyCmsAPI";

分为开发模式和打包模式,然后统一管理所有请求api:

浅谈vue项目利用Hbuilder打包成APP流程,以及遇到的坑

其他应该还有更好的方法,懒得研究了,目的已达到,效果已实现即可。

这一切弄好了之后就是打包,然后放入Hbuilder 编辑器进行联机测试,

2.联机测试:

安卓机,真香

1.只需要把你的手机通过USB连接电脑,2.打开手机的开发者模式,3.选择USB可以传输文件,4.打开USB调式模式,5.确认电脑可以访问该手机。

只要在hbuilder 运行里 找到你的手机点击运行就可以,会在手机安装测试app,接下来就可以测试了,很给力

苹果机,真臭

手机电脑连接苹果手机要什么鬼itues ,老子光是安装这个玩意都整了一个小时才让电脑连上手机,这个先不提

在hbuilder运行里找到iPhone点击运行后,会安装测试app,然后你要在 设置-通用里管理这个app,要选择信任才行,否则你是打不开你的测试app的

打开app后最最操蛋的事情是他丫的居然访问不了接口,控制台打印拦截器的请求信息,响应信息,发现点击请求后直接就进入catch了,根本不执行请求,错误提示就一个newwork error ,就这一个问题,整了一下午

各种搜索,百度,包括hbuilder官网给出的解决问题的方法,在原vue项目中又是引入qs ,又是引入es6-primse,然并卵

最后的最后在项目的manife.json配置中添加了一个配置:在plus的下面

"kernel":{
 "ios":"UIWebview"
},

不是专业app开发,表示不懂,问题解决,记录下日志

以上这篇浅谈vue项目利用Hbuilder打包成APP流程,以及遇到的坑就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
纯js写的分页表格数据为json串
Feb 18 Javascript
window.location.href的用法(动态输出跳转)
Aug 09 Javascript
PHP+mysql+Highcharts生成饼状图
May 04 Javascript
JS简单实现无缝滚动效果实例
Aug 24 Javascript
jQuery实现获取元素索引值index的方法
Sep 18 Javascript
node.js文件上传处理示例
Oct 27 Javascript
ztree实现左边动态生成树右边为内容详情功能
Nov 03 Javascript
jQuery.Sumoselect插件实现下拉复选框效果
Nov 09 jQuery
JavaScript类数组对象转换为数组对象的方法实例分析
Jul 24 Javascript
详解element-ui中form验证杂记
Mar 04 Javascript
JS实现音乐导航特效
Jan 06 Javascript
js this 绑定机制深入详解
Apr 30 Javascript
解决vue项目 build之后资源文件找不到的问题
Sep 12 #Javascript
vue项目打包为APP,静态资源正常显示,但API请求不到数据的操作
Sep 12 #Javascript
vue v-on:click传递动态参数的步骤
Sep 11 #Javascript
vue Cli 环境删除与重装教程 - 版本文档
Sep 11 #Javascript
在vue中使用cookie记住用户上次选择的实例(本次例子中为下拉框)
Sep 11 #Javascript
请求时token过期自动刷新token操作
Sep 11 #Javascript
vue+axios 拦截器实现统一token的案例
Sep 11 #Javascript
You might like
php在线解压ZIP文件的方法
2014/12/30 PHP
PHP中substr函数字符串截取用法分析
2016/01/07 PHP
php 多文件上传的实现实例
2016/10/23 PHP
PHP小程序支付功能完整版【基于thinkPHP】
2019/03/26 PHP
Jquery EasyUI中弹出确认对话框以及加载效果示例代码
2014/02/13 Javascript
javascript中使用正则计算中文长度的例子
2014/04/29 Javascript
原生javascript实现隔行换色
2015/01/04 Javascript
理解javascript中的原型和原型链
2015/07/30 Javascript
详解JavaScript中的4种类型识别方法
2015/09/14 Javascript
跟我学习javascript的call(),apply(),bind()与回调
2015/11/16 Javascript
轻松学习jQuery插件EasyUI EasyUI创建菜单与按钮
2015/11/30 Javascript
基于Javascript实现二级联动菜单效果
2016/03/04 Javascript
Bootstrap3制作图片轮播效果
2016/05/12 Javascript
30分钟快速掌握Bootstrap框架
2016/05/24 Javascript
JQuery 动态生成Table表格实例代码
2016/12/02 Javascript
jQuery插件FusionCharts实现的2D面积图效果示例【附demo源码下载】
2017/03/06 Javascript
使用JS获取SessionStorage的值
2018/01/12 Javascript
jquery validate 实现动态增加/删除验证规则操作示例
2019/10/28 jQuery
jQuery轮播图功能制作方法详解
2019/12/03 jQuery
通过实例解析JavaScript for in及for of区别
2020/06/15 Javascript
OpenCV实现人脸识别
2017/04/07 Python
Windows下anaconda安装第三方包的方法小结(tensorflow、gensim为例)
2018/04/05 Python
Python实现购物车程序
2018/04/16 Python
django传值给模板, 再用JS接收并进行操作的实例
2018/05/28 Python
django admin后台添加导出excel功能示例代码
2019/05/15 Python
Python PyCharm如何进行断点调试
2019/07/05 Python
英国定做窗帘和纺织品面料一站式商店:Dekoria
2018/08/29 全球购物
size?爱尔兰官方网站:英国伦敦的球鞋精品店
2019/03/31 全球购物
SneakerStudio英国:最佳运动鞋商店
2019/05/22 全球购物
什么是Linux虚拟文件系统VFS
2012/01/31 面试题
酒店销售经理岗位职责
2014/01/31 职场文书
财务务虚会发言材料
2014/10/20 职场文书
2015年度学校卫生工作总结
2015/05/12 职场文书
关于springboot配置druid数据源不生效问题(踩坑记)
2021/09/25 Java/Android
十大冰系宝可梦排名,颜值最高的阿罗拉九尾,第三使用率第一
2022/03/18 日漫
一文了解Java动态代理的原理及实现
2022/07/07 Java/Android