index.js 2.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596
  1. import {
  2. getUserInfo
  3. } from '~/api/user'
  4. import {
  5. getOpenidNoLogin
  6. } from '~/utils/httpUtilNoLogin';
  7. import httpRequestApi from '~/utils/APIClient';
  8. let app = getApp()
  9. var videoAd = null;
  10. Page({
  11. /**
  12. * 页面的初始数据
  13. */
  14. data: {
  15. userInfo: {},
  16. isIos: false
  17. // isIos: app.globalData.isIOS
  18. },
  19. onLoad() {
  20. if (wx.createRewardedVideoAd) {
  21. // 加载激励视频广告
  22. videoAd = wx.createRewardedVideoAd({
  23. adUnitId: 'adunit-77f46b2dc73da123'
  24. })
  25. //捕捉错误
  26. videoAd.onError(err => {
  27. console.log(err);
  28. })
  29. // 监听关闭
  30. videoAd.onClose((status) => {
  31. console.log(status);
  32. if (status && status.isEnded || status === undefined) {
  33. // 正常播放结束,下发奖励
  34. // continue you code
  35. } else {
  36. // 播放中途退出,进行提示
  37. wx.showToast({
  38. icon: 'none',
  39. title: '取消观看',
  40. })
  41. }
  42. })
  43. }
  44. },
  45. async onShow() {
  46. let uid = wx.getStorageSync('uid') || ''
  47. // 没登陆先走静默登录,登录后直接获取用户信息
  48. if (!uid) {
  49. return getOpenidNoLogin(async () => {
  50. let userInfo = await getUserInfo()
  51. console.log(userInfo);
  52. this.setData({
  53. userInfo
  54. })
  55. })
  56. } else {
  57. let userInfo = await getUserInfo()
  58. console.log(userInfo);
  59. this.setData({
  60. userInfo
  61. })
  62. }
  63. },
  64. jump({
  65. currentTarget
  66. }) {
  67. let url = currentTarget.dataset.url
  68. wx.navigateTo({
  69. url: url
  70. });
  71. },
  72. goToService() {
  73. httpRequestApi.userEvent('SERVICE');
  74. },
  75. switcher({
  76. currentTarget
  77. }) {
  78. wx.reLaunch({
  79. url: `/pages/index/index?tabbarIndx=${currentTarget.dataset.index}`
  80. });
  81. },
  82. rewardedVideo() {
  83. // button 点击事件
  84. console.log('打开激励视频');
  85. // 在合适的位置打开广告
  86. if (videoAd) {
  87. videoAd.show().catch(err => {
  88. // 失败重试
  89. videoAd.load()
  90. .then(() => videoAd.show())
  91. })
  92. }
  93. }
  94. })