如何才能通过接口调用判断符合条件的情况下再触发转发功能?
发布于 6 年前 作者 li19 5489 次浏览 来自 官方Issues

我需要的功能是:

在点击一个转发按钮时,调用接口,通过接口返回的值,判断该情况下能否转发,如果不能转发就不弹起转发卡片,否则弹起卡片

1 回复

点击小程序右上角的 三点 转发,无法获取接口返回的值进行判断后在弹的

第二次才弹出分享框的方案

<button open-type="{{isShare?‘share’:’’}}" bindtap="{{isShare?’’:‘shareCheck’}}">{{shareChecking?‘分享检测中…’:(isShare?‘点击分享’:‘分享’)}}</button>

shareCheck(){

    this.setData({

        shareChecking: !0

    })

    var res = { canShare: 1 } //分享检测接口返回{canShare:0|1}

    if (res.canShare){

        // 在这里才添加onShareAppMessage,为了就是隐藏右上角的转发,

        // 当然也可以保留原来Page里的onShareAppMessage,在onLoad里调用wx.hideShareMenu()也是可以隐藏右上角的转发的

        this.onShareAppMessage = () => {

            // 开启这里的setData的话,每次都要第二次点击才弹出分享框,也就是分享前都重新请求一次接口

            // 否则就只有首次需要点2次,之后都不用再点第二次才弹框了

            // this.setData({

            //   isShare: !1

            // })

            return {

                title: “so easy!”,

                path: “/index/index”

            };

        }

        this.setData({

            isShare: !0

        })

    }else{

        wx.showToast({

            title: ‘你无法分享’,

            icon: ‘none’,

        })

    }

    this.setData({

        shareChecking: !1

    })

}

回到顶部