import { getMyInfo, getVipInfo, getWxQrcode, getLearnCard } from '~/api/user' import event from '~/mixins/event' import { getProducts, userEvent } from '~/api/global' import { createStoreBindings } from 'mobx-miniprogram-bindings' import { store } from '~/store/index' const app = getApp() Page({ behaviors: [event], data: { userInfo: {}, vipTime: '', tasks: [], isIos: app.globalData.isIOS, qrCode: '', activationModal: false, activationRes: {}, products: [], isPreferential: false }, async onLoad() { // 手工绑定 this.storeBindings = createStoreBindings(this, { store, actions: { setUser: 'setUser' } }) if (this.data.isIos) { let qrCode = await getWxQrcode() this.setData({ qrCode: qrCode.ticketUrl }) } }, async onShow() { if (typeof this.getTabBar === 'function') { this.getTabBar().setData({ selected: 4 }) } let uid = wx.getStorageSync('uid') || '' if (!uid) { getApp().callBack = (res) => { this.setUserInfo() } } else { this.setUserInfo() } }, // 设置用户信息及vip状态 async setUserInfo() { let userInfo = await getMyInfo() let vipTime = await getVipInfo() this.setUser(userInfo.user) this.getProducts() this.setData({ userInfo, vipTime, }) }, paySuccess() { this.setUserInfo() this.selectComponent('#vipModal').open() }, async getProducts() { let { productList: products, isPreferential } = await getProducts() console.log(products); this.setData({ products, isPreferential }) }, activationCode() { wx.showModal({ title: '请输入激活码', editable: true, success: async ({ confirm, content }) => { if (confirm) { let regexp = /^[a-zA-Z0-9]{4}$/ if (regexp.test(content)) { let activationRes = await getLearnCard({ cardNo: content }) if (activationRes.code == 200) { activationRes = { code: 200, message: '快去朗读挑战吧!' } } this.setUserInfo() if (typeof this.getTabBar === 'function') { this.getTabBar().setData({ mask: true }) } this.setData({ activationModal: true, activationRes }) } else { if (typeof this.getTabBar === 'function') { this.getTabBar().setData({ mask: true }) } this.setData({ activationModal: true, activationRes: { code: 581, message: '请检查激活码输入是否正确' } }) } } } }) }, toGzh() { this.selectComponent('#gzh').open() }, openDonutBuy({ currentTarget }) { let product = currentTarget.dataset.product console.log(product); this.selectComponent('#donutBuy').open(product) }, jump({ currentTarget }) { let url = currentTarget.dataset.url console.log(url); wx.navigateTo({ url: url }); }, clipboar() { wx.setClipboardData({ data: this.data.userInfo.user.eid, success: function (res) { //成功回调函数 wx.showToast({ title: '已复制', icon: "none" }) } }) }, closeModal() { this.setData({ activationModal: false }) if (typeof this.getTabBar === 'function') { this.getTabBar().setData({ mask: false }) } }, // 分享配置 onShareAppMessage(res) { // #if MP return { title: '自从用了它,家里朗朗书声,美妙极了!你家孩子也快来试试!', path: `/pages/index/index?uid=${wx.getStorageSync('uid')}`, imageUrl: 'http://reader-wx.ai160.com/images/reader/v3/375-300-1.jpg' } // #elif ANDROID return { title: '自从用了它,家里朗朗书声,美妙极了!你家孩子也快来试试!', userName: 'gh_50f61361ad1d', path: `/pages/index/index?uid=${wx.getStorageSync('uid')}`, imagePath: '/static/375-300-2.jpg', webpageUrl: 'http://www.efunbox.cn', withShareTicket: true, miniprogramType: 1, scene: 0, } // #endif }, onShareTimeline: function () { return { title: '终于找到适合孩子的朗读神器了!动画配音,边玩边学!', query: `uid=${wx.getStorageSync('uid')}`, imageUrl: 'http://reader-wx.ai160.com/images/reader/v3/yuwen.jpg' } }, })