vue微信分享出来的链接点开是首页问题的解决方法


Posted in Javascript onNovember 28, 2018

最近工作上遇到了这样一个Bug:“vue微信分享出来的链接点开是首页”

公司网站有PC端和移动端,两个版本。其中如果手机访问PC端,则自动跳转到移动端。(这是常规操作,没啥稀奇点。)

可神奇的问题来了。

在移动端中有微信分享功能,如果手机直接访问手机端的地址进入子页面分享,点开分享的链接进入的是子页面。但是如果是从PC端跳转进入手机端,分享子页面链接打开将会是主页。

这个问题我也百度了各种方法,折腾了一天,然而都没啥用。

最后自己想了一个替代方案:

static目录下新建一个名为html的文件夹,在html文件夹中再新建一个redirect.html(看到这个文件名是不是知道我要干啥了)

没错,我们做一个重定向。

html中写入以下内容

<script>
 
 let url = location.href.split('?')
 let pars = url[1].split('&')
 let data = {}
 pars.forEach((n, i) => {
 let p = n.split('=')
 data[p[0]] = p[1]
 })
 if (!!data.app3Redirect) {
 self.location = decodeURIComponent(data.app3Redirect)
 }
 
</script>

只需要script标签就可以了,反正只是做重定向。

接下来就简单了,原本设置给微信的分享链接是

shareWxLink = window.location.href

现在我们给他改成

shareWxLink = window.location.href.split('#')[0] + 'static/html/redirect.html?app3Redirect=' + encodeURIComponent(window.location.href)

这样,我们就把当前页的地址编码后放到参数app3Redirect里面,当访问redirect.html时将自动重定向到解码后的原地址。

到此,终于把这个坑爹的Bug给修复了。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
Mozilla 表达式 __noSuchMethod__
Apr 05 Javascript
jQuery的初始化与对象构建之浅析
Apr 12 Javascript
flash调用js中的方法,让js传递变量给flash的办法及思路
Aug 07 Javascript
js生成的验证码的实现与技术分析
Sep 17 Javascript
Underscore.js常用方法总结
Feb 28 Javascript
轻松掌握JavaScript享元模式
Aug 27 Javascript
AngularJS表单和输入验证实例
Nov 02 Javascript
Angular项目从新建、打包到nginx部署全过程记录
Dec 09 Javascript
Vue2.0学习之详解Vue 组件及父子组件通信
Dec 12 Javascript
jquery3和layui冲突导致使用layui.layer.full弹出全屏iframe窗口时高度152px问题
May 12 jQuery
详解JavaScript中精度失准问题及解决方法
Feb 04 Javascript
Vue触发input选取文件点击事件操作
Aug 07 Javascript
vue实现微信分享功能
Nov 28 #Javascript
vue微信分享到朋友圈 vue微信发送给好友
Nov 28 #Javascript
详解小程序rich-text对富文本支持方案
Nov 28 #Javascript
微信小程序实现简单评论功能
Nov 28 #Javascript
微信小程序实现省市区三级地址选择
Jun 21 #Javascript
Vue一次性简洁明了引入所有公共组件的方法
Nov 28 #Javascript
react脚手架如何配置less和ant按需加载的方法步骤
Nov 28 #Javascript
You might like
PHP5 操作MySQL数据库基础代码
2009/09/29 PHP
Yii分页用法实例详解
2014/12/04 PHP
PHP实现RTX发送消息提醒的实例代码
2017/01/03 PHP
Js+Dhtml:WEB程序员简易开发工具包(预先体验版)
2006/11/07 Javascript
avalon js实现仿google plus图片多张拖动排序附源码下载
2015/09/24 Javascript
js实现自定义路由
2017/02/04 Javascript
webpack进阶——缓存与独立打包的用法
2017/08/02 Javascript
VsCode新建VueJs项目的详细步骤
2017/09/23 Javascript
JavaScript实现多叉树的递归遍历和非递归遍历算法操作示例
2018/02/08 Javascript
详解如何在Vue里建立长按指令
2018/08/20 Javascript
[01:08:00]Fnatic vs Winstrike 2018国际邀请赛小组赛BO2 第一场 8.18
2018/08/19 DOTA
[59:15]完美世界DOTA2联赛PWL S2 LBZS vs FTD.C 第一场 11.20
2020/11/20 DOTA
[34:47]完美世界DOTA2联赛PWL S2 Magma vs LBZS 第一场 11.18
2020/11/18 DOTA
Python使用正则表达式抓取网页图片的方法示例
2017/04/21 Python
Python中定时任务框架APScheduler的快速入门指南
2017/07/06 Python
Python网络编程详解
2017/10/31 Python
在Pandas中给多层索引降级的方法
2018/11/16 Python
树莓派实现移动拍照
2019/06/22 Python
用Cython加速Python到“起飞”(推荐)
2019/08/01 Python
对Python获取屏幕截图的4种方法详解
2019/08/27 Python
通过celery异步处理一个查询任务的完整代码
2019/11/19 Python
Python3运算符常见用法分析
2020/02/14 Python
pyspark给dataframe增加新的一列的实现示例
2020/04/24 Python
使用Python制作一个数据预处理小工具(多种操作一键完成)
2021/02/07 Python
CSS3动画之流彩文字效果+图片模糊效果+边框伸展效果实现代码合集
2017/08/18 HTML / CSS
美国领先的家庭智能音响系统品牌:Sonos
2018/07/20 全球购物
自荐信格式范文
2013/10/07 职场文书
中专毕业生自荐信范文
2013/11/28 职场文书
财经学院自荐信范文
2014/02/02 职场文书
领导调研接待方案
2014/02/27 职场文书
网络管理员岗位职责
2014/03/17 职场文书
购房意向书范本
2014/04/01 职场文书
甲乙双方合作协议书
2014/10/13 职场文书
2014年学校安全工作总结
2014/11/13 职场文书
学校隐患排查制度
2015/08/05 职场文书
使用CSS定位HTML元素的实现方法
2022/07/07 HTML / CSS