uniapp开发微信公众号分享功能

1.微信签名(请求后台接口获取签名所需参数)

//微信签名
            getWxrz() {
                let urlStr = location.href.split('#')[0]; //获取当前url为签名认证地址
                uni.request({
                    url: this.baseUrl + 'api/wechat/signature',
                    method: 'post',
                    header: {
                        sign: this.sign,
                        timestamp: this.timestamp,
                    },
                    data: {
                        url: urlStr,//获取当前url为签名认证地址
                    },
                    success: res => {
                        if (res.data.code == 0) {
                            wx.config({
                                debug: false, // true为开启调试模式,调用的所有api的返回值会在客户端alert出来。
                                appId: res.data.data.appid, // 必填,公众号的唯一标识
                                timestamp: res.data.data.timestamp, // 必填,生成签名的时间戳
                                nonceStr: res.data.data.noncestr, // 必填,生成签名的随机串
                                signature: res.data.data.signature, // 必填,签名
                                jsApiList: [ // 可能需要用到的能力
                                    'onMenuShareTimeline',
                                    'onMenuShareAppMessage',
                                    'updateAppMessageShareData',
                                    'updateTimelineShareData'
                                ],
                            }) // 必填,需要使用的JS接口列表
                        }
                    }
                });
            },

2.实现分享(分享方法一点要写在wx.ready函数内,并且需要先完成签名后,再进行分享)

//分享商品
            share(){
                let that = this
                let urlstr = location.href
                console.log('fenxiang',that.shopInfo.title)
                wx.ready(res => {
                    console.log('分享开始了....')
                    wx.onMenuShareAppMessage({ 
                        title: '鯨熹来电', // 分享标题
                        desc: that.shopInfo.title,
                        link:urlstr , // 分享链接,该链接域名或路径必须与当前页面对应的公众号JS安全域名一致
                        imgUrl: 'https://jxld.xinlaidian.cn/h5/#/static/logo.png', // 分享图标
                        success: function (res) {
                           console.log('分享成功',res)
                        },
                        cancel: function (res) {
                            console.log('分享失败')
                        }
                    });
                });
            },

你可能感兴趣的:(uniapp开发微信公众号分享功能)