进入微信企业项目授权回跳之后退出项目需要点击两次(手机的返回主键,回退键)才能正常退出的问题解决
出现这样的问题无非就是第一次进入项目之后,在微企浏览器添加了一条历史记录,之后由于授权成功回来,会再一次添加一条记录,所以我们解决的常规方法就是利用pushState方法加上关闭当前微信窗口API得以解决问题
history.pushState(null, null, document.URL)
如果页面组件作了缓存,就需要利用activated和beforeRouteLeave
activated() {if (window.history && window.history.pushState) {history.pushState(null, null, document.URL)window.addEventListener('popstate', this.goBack, false)}
},
// 路由守卫
beforeRouteLeave(to, from, next) {window.removeEventListener('popstate', this.goBack, false) // 跳转时需要清空浏览器添加的记录next()
},
methods: {
goBack() { // 点击浏览器的返回触发的方法let timer = setTimeout(function () {document.addEventListener("WeixinJSBridgeReady",function () {WeixinJSBridge.call("closeWindow");},false);//这个可以关闭ios系统的手机WeixinJSBridge.call("closeWindow");clearInterval(timer)//这个可以关闭安卓系统的手机}, 500)this.$router.go(-2)
},
}
另外需要注意的是:
1.跳转到详情时,需要利用Router.replace()跳转 ,否则如果跳转到详情再返回来首页列表 还是会出现返回两次才能正常退出项目。
2.因为在vue项目使用了微信WeixinJSBridge对象,此时会报错WeixinJSBridge为未定义,导致不能正常打开和打包发布,
所以当我们用vue实现调取微信api时,虽然WeixinJSBridge在微信内置浏览器中可以使用,但在脚手架编译或者发布时会提示WeixinJSBridge is not defined,使得我们无法调试也无法发布,无法验证功能。究竟改如何解决,这需要根据vue-cli的版本来设置,百度中大部分都没有提及。
vue-cli3之前的版本根目录下是有eslintrc.js的,直接在文件中增加"globals": {"WeixinJSBridge" : false}即可
如果是vue-cli3之后版本,需要在package.json中找到eslintConfig,然后增加"globals": {"WeixinJSBridge" : false}即可
至此,就可以编译通过正常调试和发布了。
(专卖店项目)
进入微信企业项目授权回跳之后退出项目需要点击两次(手机的返回主键,回退键)才能正常退出的问题解决相关推荐
- 使用uniapp实现锚点跳转,主按钮消失在视口时显示锚点按钮,点击锚点按钮页面返回主按钮位置
使用uniapp实现锚点跳转,主按钮消失在视口时显示锚点按钮,点击锚点按钮页面返回主按钮位置 onpagescroll页面滑动监听事件 获取视口高度和按钮(btn-bg)距离顶部高,便可计算按钮离开视 ...
- 微信公众号授权登录vue移动端项目
1. 在需要授权登录的页面中 if (this.$route.query.uuid) {this.wxOpenId = this.$route.query.uuid;};let isWeixin = ...
- 微信公众号H5页面跳转至app的某个页面,如果手机内没有app,则进入下载页面
安卓实现方法: $(function(){ var Id = getParameter("goodsid"); //此操作会调起app并阻止接下来的js执行,进 ...
- PHP快速实现微信小程序授权
小程序开发讲究的就是一个敏捷软件开发模式,作为微信小程序授权也有多个项目的积累,所以想贴出来代码,让需要用到的朋友拿来即用(当然前提是需要修改自己的小程序appid和秘钥). 前端调用wx.login ...
- 微信企业支付(一)注意
今天看了微信企业支付,没用代码实现,用postman简单测试了借口,看看返回数据,折腾大半天,总结: ca证书,官方给的证书工具无法运行,检查了dll文件,下载了各种修复工具什么的,结果,换个电脑好了 ...
- H5微信公众号授权登录
目录 一.封装获取code的函数.存储token函数.获取token函数 二.点击请求微信公众号授权并跳转 三.重定向跳转会当前链接获取code登录 四.整体流程的描述: 一.封装获取code的函数. ...
- oracle主键从键怎么看,分析Oracle主键的跳号现象
从做Jforum项目以来,以来遇到一个很明显的现象,就是每个表的主键都出现跳号现象.具体表现在:当一次操作若干条数据时,自动增 从做Jforum项目以来,以来遇到一个很明显的现象,就是每个表的主键都出 ...
- mysql 主键冲突 多个事务回滚_MySQL实战45讲Day38----自增主键不是连续的原因
一.自增主键不连续的原因: 对于表: CREATE TABLE `t` ( `id` int(11) NOT NULL AUTO_INCREMENT, `c` int(11) DEFAULT NULL ...
- Mybatis 主键插入回显
一. Mysql ⏹方式1: 使用属性返回新增记录的ID useGeneratedKeys属性: 是否使用获取新增记录的id值 keyProperty属性: 将返回的主键值设置给哪个属性 <in ...
最新文章
- [Python Study Notes] Python的安装
- 【一周算法实践集训】_【模型构建】_baseline
- 自动驾驶中多模态三维目标检测研究综述
- c++ string类 用法简介
- 设置树莓派开机自动运行代码
- 别再说你不会ElasticSearch,都给你整理好了
- SU22 for service CRM_OPPORTUNITY
- c3d怎么调语言,falc3d参数调整心得
- Android 实现卫星菜单
- 创建Tapestry5 工作环境
- DM7 达梦 数据库 数据守护(Data Watch) -- 实时主备环境搭建
- linux 远程扫描仪,扫描仪Web远程控制
- GMP法规附录《计算机化系统》那些事儿
- ionic4升级到ionic5踩坑记录
- 方差及常见分布的方差计算与推导
- Spring之DI依赖注入
- 一款强大易用的Vue-markdown文本编辑器插件
- 软件测试基础-自动化测试技术
- PMP报考条件不符合不知道怎么解决?全套操办方法安排上了!不懂就看
- 暗黑游戏服务器列表为空,暗黑3战网错误代码大全 游戏出错童鞋看过来