今天在做一个公众号关于取名的项目中,有一个功能是名字测评后,需要进行自定义分享,由于后端接口要求需要传,测评的相关参数中是带参数的如下:
let params = {"surname":"张","combine":"俊","sex":"1","birthday":"2018/12/25 15:45","homePlace":"北京","longitude":"","latitude":""}
let URL = window.location.protocol + '//' + window.location.host +'/zhouyiApp/#/NameDetail?surname='+params.surname+'&combine='+params.combine+'&sex='+params.sex+'&birthday='+params.birthday+'&homePlace='+params.homePlace+'&longitude='+params.longitude+'&latitude='+params.latitude+'&score=1&isShare=1';
let shareUserInfoLink = {
title: shareName+' - 姓名详解' || '',
//下面是微信的两个字段,和上面的字段名不一样
imgUrl: window.location.protocol + '//' + window.location.host +'/zhouyiApp/logo.png',
link: shareUrl,
desc: '全面解读姓名所包含的文化印象、周易命理、生肖宜忌、五格数理信息,助你轻松挑选好名字'
};
Util.wxShareService().setShareInfo(shareUserInfoLink); //设置微信分享信息 , 分享后如下:
明显这不是想要的结果,后面通过encodeURI,encodeURIComponent进行编码发现,encodeURI编码后才能生效代码如下:
let params = {"surname":"张","combine":"俊","sex":"1","birthday":"2018/12/25 15:45","homePlace":"北京","longitude":"","latitude":""}
let URL = window.location.protocol + '//' + window.location.host +'/zhouyiApp/#/NameDetail?surname='+params.surname+'&combine='+params.combine+'&sex='+params.sex+'&birthday='+params.birthday+'&homePlace='+params.homePlace+'&longitude='+params.longitude+'&latitude='+params.latitude+'&score=1&isShare=1';
URL = encodeURI(URL);
let shareUserInfoLink = {
title: shareName+' - 姓名详解' || '',
//下面是微信的两个字段,和上面的字段名不一样
imgUrl: window.location.protocol + '//' + window.location.host +'/zhouyiApp/logo.png',
link: shareUrl,
desc: '全面解读姓名所包含的文化印象、周易命理、生肖宜忌、五格数理信息,助你轻松挑选好名字'
};
Util.wxShareService().setShareInfo(shareUserInfoLink); //设置微信分享信息 , 分享后如下:
ps:若有不同观点,或者其它方案的园友,请留言。