WechatUserBtn.ts 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. import { gameMethod } from "../common/gameMethod"
  2. import GameDataCenter from "../data/GameDataCenter"
  3. import { uiCommon } from "./UICommon"
  4. // 创建微信用户授权按钮
  5. export default class WechatUserBtn {
  6. // 创建
  7. static create(node: fgui.GObject, onUserClickFunction: (isSucc: boolean) => void): any {
  8. if (node == null || node.visible == false) { return null }
  9. let btn = null
  10. if (cc.sys.platform != cc.sys.WECHAT_GAME) { return null }
  11. if (GameDataCenter.plat.instance.hasAuthUserInfo) { return null }
  12. let param = uiCommon.getWxBtnPos(node)
  13. btn = wx.createUserInfoButton({
  14. type: "text",
  15. text: "",
  16. style: {
  17. left: param.left,
  18. top: param.top,
  19. width: param.width,
  20. height: param.height,
  21. lineHeight: param.height,
  22. backgroundColor: "#ff000000", // 00000000 ff0000
  23. color: "#00000000",
  24. textAlign: "center",
  25. fontSize: 16,
  26. borderRadius: 0,
  27. },
  28. });
  29. btn.onTap((res) => {
  30. if (res.errMsg == "getUserInfo:ok") {
  31. console.log("授权用户信息:", res)
  32. GameDataCenter.plat.getWechatUserInfo()
  33. } else {
  34. console.log("授权用户失败:", res)
  35. // this.userInfoBtn.hide() // 用户不授权,则不隐藏一直存在
  36. }
  37. onUserClickFunction(res.errMsg == "getUserInfo:ok" ? true : false)
  38. })
  39. return btn
  40. }
  41. }