zoukankan      html  css  js  c++  java
  • 关于微信分享的一些心得

    首先,我一拿到分享这个功能,我是懵逼的,没做过,比如怎么点击右上角的按钮,怎么触发发送朋友圈事件等等之类,其实这个不用担心,这个都是微信自己的,

    我们只需要在在vue你要分享的那个页面中初始化微信的分享就行,自己写一个recommend.js(这个里面有调微信接口的,有配置的等等之类的,注意微信分享这个只能在预发布和正式环境测试,因为微信的接口才会通过),我们做分享的思路是,分享出去后,那个连接跳转的空html,比如下面的share。html,这个html里面有个函数自执行,用于调接口第一个接口是微信的,看是否关注,第二个接口是后台的,用于记录推荐人,所以二维码里面埋的地址也是这个,很长,所以二维码看到很密集

    第一步:先把写好的recommend引入

    import recommend from '../../../static/js/recommend.js'

    第二步:在mounted初始化recommend(也不一定要mounted里面搞,比如下面的doctorName,这些你在你哪里得到了,就可以初始化recommend)

    //分享那个
    getDocInfo(){
    //用于跳转的空html页面
    let url=urlWay.RongIMHost+'user/share.html'
    recommend('医生主页',this.doctor.doctorInfo.doctorName+'-'+this.doctor.doctorInfo.doctorTitle+'【我的标题】','简介:'+this.doctor.doctorInfo.doctorComment,this.fileserver+this.doctor.doctorInfo.doctorImage,url);
    },

    第三步:在recommend中做你改动的操作

    下面是recommend.js文件,(我重新写弄一个上传吧,另一个随笔)

    这个文件里面注意几个坑,第一个获取签名那里的url一定要动态获取,就算你知道域名也要动态获取(就是当前分享的页面的域名),第二个如果分享出去没有标题没有图片等那就说明wx.config里面有错,把debug打开调试就可以看到哪里出错了

    第4步:在空的html中

    </script>

    <script>
    (function() {

    let jump=(window.location.href).substring((window.location.href).indexOf('jumpUrl=')+8,(window.location.href).length-1)
    /*
    if (jump.indexOf('&from')==-1){
    return
    }*/
    //这里一定要干掉&from这他吗是微信自己在屁股后面加的参数,我这边真实地址是加了base64的,所以要干掉这个
    let jumpurl=jump.slice(0,jump.indexOf('&from'))
    //这个是龙龙后台的接口
    let url=urlWay.host+'shareExtend/handleShareExtendJumpLogic.action?jumpUrl='+jumpurl
    setTimeout(
    function () {
    //这个是调微信接口看关注没
    window.location.href='https://open.weixin.qq.com/connect/oauth2/authorize?appid='+urlWay.appId+'&redirect_uri='+
    url+'&response_type=code&scope=snsapi_userinfo&state=gc#wechat_redirect'
    }
    ,500);
    })();
    </script>

    有趣的东西,用jq生成二维码的地方,要用到jq的插件(jquery.qrcode.js)

    render: "canvas",一定要canvas,table是针对IE的,日了狗了,table就算你指定了宽高是正方形,table也还是生成的长方形(高度会少一点,所以扫描不起)

    第一步,先映入jq,在引入jquery.qrcode.js(依赖于jq)

    第二公:

    <div id="qrcode"></div>
    第三部:$("#code").qrcode({
        render: "canvas"//也可以替换为table,
                 text: this.Url,
                  300,
                  height:300

    });
  • 相关阅读:
    Source Maps简介
    JavaScript数据结构——图的实现
    JavaScript数据结构——树的实现
    JavaScript数据结构——字典和散列表的实现
    JavaScript数据结构——集合的实现与应用
    [转]通过设置nginx的client_max_body_size解决nginx+php上传大文件的问题
    安卓刷量技术揭秘
    【转】让Bootstrap 3兼容IE8浏览器
    [LINK]Python服务器开发一:python基础
    [LINK]用Python计算昨天、今天和明天的日期时间
  • 原文地址:https://www.cnblogs.com/myfirstboke/p/8446128.html
Copyright © 2011-2022 走看看