浅谈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 相关文章推荐
Javascript简单实现可拖动的div
Oct 22 Javascript
JS图像无缝滚动脚本非常好用
Feb 10 Javascript
javascript事件函数中获得事件源的两种不错方法
Mar 17 Javascript
IE8下jQuery改变png图片透明度时出现的黑边
Aug 30 Javascript
js 弹出对话框(遮罩)透明,可拖动的简单实例
Jul 11 Javascript
使用Ajax与服务器(JSON)通信实例
Nov 04 Javascript
教你快速搭建Node.Js服务器的方法教程
Mar 30 Javascript
浅谈Vuejs中nextTick()异步更新队列源码解析
Dec 31 Javascript
微信小程序模板(template)使用详解
Jan 31 Javascript
Vue 组件传值几种常用方法【总结】
May 28 Javascript
Element-Ui组件 NavMenu 导航菜单的具体使用
Oct 24 Javascript
基于vue项目设置resolves.alias: '@'路径并适配webstorm
Dec 02 Vue.js
解决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 header()函数使用详细(301、404等错误设置)
2013/04/17 PHP
PHP中的流(streams)浅析
2015/07/02 PHP
thinkPHP线上自动加载异常与修复方法实例分析
2016/12/01 PHP
PHP 计算两个时间段之间交集的天数示例
2019/10/24 PHP
PHP设计模式之装饰器(装饰者)模式(Decorator)入门与应用详解
2019/12/13 PHP
JavaScript中Math对象方法使用概述
2014/01/02 Javascript
jQuery+slidereveal实现的面板滑动侧边展出效果
2015/03/14 Javascript
javascript实现带下拉子菜单的导航菜单效果
2015/05/14 Javascript
jQuery模拟原生态App上拉刷新下拉加载更多页面及原理
2015/08/10 Javascript
深入解析JavaScript框架Backbone.js中的事件机制
2016/02/14 Javascript
js简单获取表单中单选按钮值的方法
2016/08/23 Javascript
老生常谈原生JS执行环境与作用域
2016/11/22 Javascript
HTML5canvas 绘制一个圆环形的进度表示实例
2016/12/16 Javascript
Jquery Easyui自定义下拉框组件使用详解(21)
2020/12/31 Javascript
利用angularjs1.4制作的简易滑动门效果
2017/02/28 Javascript
JavaScript实现跟随滚动缓冲运动广告框
2017/07/15 Javascript
Angular实现点击按钮控制隐藏和显示功能示例
2017/12/29 Javascript
js中let和var定义变量的区别
2018/02/08 Javascript
微信小程序下拉菜单效果的实例代码
2019/05/14 Javascript
通过javascript实现段落的收缩与展开
2019/06/26 Javascript
[02:41]DOTA2亚洲邀请赛小组赛第三日 赛事回顾
2015/02/01 DOTA
Tensorflow 同时载入多个模型的实例讲解
2018/07/27 Python
Python中那些 Pythonic的写法详解
2019/07/02 Python
python同步两个文件夹下的内容
2019/08/29 Python
python实现程序重启和系统重启方式
2020/04/16 Python
python3 循环读取excel文件并写入json操作
2020/07/14 Python
如何使用css3实现一个类在线直播的队列动画的示例代码
2020/06/17 HTML / CSS
Europcar英国:英国汽车和货车租赁
2017/01/21 全球购物
英国现代家具和照明购物网站:Heal’s
2019/10/30 全球购物
行政助理岗位职责
2013/11/10 职场文书
汽车机修工岗位职责
2014/03/06 职场文书
同居协议书范本
2014/04/23 职场文书
大学生标准自荐书
2014/06/15 职场文书
党支部先进事迹材料
2014/12/24 职场文书
银行大堂经理培训心得体会
2016/01/09 职场文书
中国古代史学名著《战国策》概述
2019/08/09 职场文书