# 分享信息
酷狗直播小程序目前支持的分享渠道有:微信好友、微信朋友圈、QQ、QQ空间。
# 分享面板
如下图所示:
当被分享者点击分享信息卡片后,会进入分享内容H5,如下图所示:
点击“去玩玩” 按钮,会打开酷狗直播APP,跳转到分享者所在直播间后,打开发出分享小程序。
# 业务示例
比如小程序业务为竞猜类型,玩家参与竞猜,当竞猜结果公布后,分享竞猜结果赢取金币。首先在竞猜结果页增加分享逻辑。
import React, { useCallback, useState } from 'react';
import './index.scss';
export default function Game() {
const [gameId, setGameId] = useState('');
...
const shareAppMessage = useCallback(() => {
FxExt.shareAppMessage({
title: '大话骰',
subTitle: '《大话骰》太好玩了,快来一起加入吧~',
paramStr: gameId // 将gameId中放入paramStr中传递
}).then(() => {
console.log('分享成功!!');
});
}, [gameId]);
...
return (
<>
...
<button type="button" className="btn" onClick={shareAppMessage}>分享</button>
...
</>
)
}
在小程序业务中注册分享信息监听。当被分享者打开小程序后,从监听SDK中可以获取分享信息,接着做分享者金币变更等业务。
import React, { useEffect, useState } from 'react';
export default function Main() {
const [curUserId, setCurUserId] = useState('');
...
useEffect(() => {
FxExt.onInviteUsers(({ data }) => {
const { paramStr, userId } = data; // 假如paramStr值为gameId
// 调用增加金币接口
FxExt.fetch({
url: 'https://myserver.com/game/addCoins',
type: 'POST',
dataType: 'json',
data: {
shareUserId: userId,
userId: curUserId,
gameId: paramStr
}
}).then(() => {
console.log('金币已到账!!');
});
});
}, [curUserId]);
...
}