import WXSDK from "../wxsdk/WXSDK"; /* * 分享与视频工具类; */ export class ShareTools { /** * 是否进入分享 onShow有插屏的话用这个判断 */ public static onShowAd: boolean = false; public static isTest: boolean = false; /** * 验证分享:可处理成功、失败 * @param shareKey * @param params params.fail 有就不处理,没有自动处理 * @param opts 目前支持4个key 1,title自定义分享标题 2,img_url自定义分享图片 3,share_type(不走后台配置写死走视频or分享。1分享2视频3无视频则分享)4,closeSimulate是否关闭模拟分享 */ static share(shareKey: string, params?: { success?: Function, fail?: Function, context?: any }, opts?: any) { if (typeof wx === 'undefined' || this.isTest) { params && params.success && params.success(); return } this.onShowAd = true; WXSDK.share.share(shareKey.toString(), params, opts).then(async res => { this.onShowAd = false; params && params.success && params.success(res); }).catch(async err => { this.onShowAd = false; if (!params || !params.fail) { wx.showToast({ title: err.msg, icon: 'none', duration: 1500 }) } else { params && params.fail && params.fail(err); } })//this.buildParams(params) } /** * 纯净分享 不处理回调 * @param shareKey */ static pureShare(shareKey: string, opts = {}) { this.share(shareKey, {}, { closeSimulate: true, ...opts }); } /** * 设置右上角分享key * @param key */ static setForwardKey(key) { WXSDK.share.setForwardKey(key) } /** * 获取分享还是视频 * @param key */ static getShareType(key) { try { return WXSDK.share.getType(key) } catch (err) { console.log("1") return 2 } } } export enum ShareKey { }