type=radio增加onclick没有效果_Taro-小程序/公众号通用h5-红包雨效果

88aff350ebea14ad96583919b234159b.png

1.项目框架Taro框架、dva脚手架2.需求促销活动:红包掉落,在有限时间领取红包,点击有爆炸效果(爆炸效果此处用小红心代替了)

3. 小程序不支持e.clientX 、 e.target.offsetLeft、e.target.offsetTop需要用e.detail.x、e.detail.y;倒计时和注册组件代码没有粘出来

dfc434050f50ee2ef3bbca45f2da8e7b.png
抢红包页面

e5eb524a8ccd930fabf5e06ed8049256.png

4.活动页面完整代码

import Taro, {
    Config} from '@tarojs/taro';
import {
     View, Image, Text } from '@tarojs/components';
import {
     Modal, Register } from 'components';
import {
     Inject, auth, getTokenInfo, RouterComponent, routerFns, urlFns, MESC } from 'utils';
import {
    AppInfoService, itemConfig} from 'services';
import {
     RedEnvelopedRainService } from './index.service';
import style from  './index.module.less';
import {
     AuthWrapper } from 'components/auth-wrapper/auth-wrapper'; //授权组件
import {
     Countdown } from 'store'; // 倒计时组件
import {
     observer, inject } from '@tarojs/mobx';
export interface IndexProps {
    
  countdown?: Countdown;
}
@inject('countdown')
@observer
export default class index extends RouterComponent<IndexProps> {
    

  config: Config = {
    
    enablePullDownRefresh: false,
  };

  state = {
    
    activityId:   Number(routerFns.getParams(this).activityId) || 13097,

    list: [], // 点击爆炸

    memberStatus: 3, // 判断用户是否注册
    registerVisible: false, // 注册组件
    countdownTime: 60 * MESC.SECOND,

    activeStatus: 0,
    rainVisible: 0, // 红包雨是否显示
    giftNum: 0, // 红包个数

    bkgnd: {}, // 后台控制数据
    activityData: {}, // 活动数据 activeStatus: -1活动未开始 0 立即开始  1 派发红包 2 今日机会用完 3 活动抽赠机会已用完 4 活动结束; appName:活动名称 activeImgUrl:活动背景图
    rewardData: {}, // 获奖数据 rewardType:1现金红包 2满减券 3实物奖品 4再来一次 5谢谢参与
  }

  @Inject(RedEnvelopedRainService) rerService: RedEnvelopedRainService;
  @Inject(AppInfoService) appInfoService: AppInfoService;

  componentDidHide() {
    
    this.props.countdown!.toEnd();
  }

  componentWillUnmount() {
    
    this.props.countdown!.toEnd();
  }

  componentDidMount() {
    
    auth.afterAuthed(() => {
     
      this.getActiveDetail(); // 获取活动配置
      this.getStatus(); // 获取注册状态
    });
  }

  /**获取活动详情*/
  getActiveDetail = () => {
    
    let token = getTokenInfo();
    th
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值