zoukankan      html  css  js  c++  java
  • 微信小程序 摇一摇

    本次案例是有一点像微信的那个摇一摇但是没有那么好看,一些APP也有看到摇一摇功能。

    小程序虽然没有提供摇一摇API接口,但是也一个加速器API  ,加上搜索一些大神的资料,我这里就做了一个dome,

    1.模拟数据,从M数组里面,每次摇一下就随机获取一条信息出来,每摇一次就显示不同的数据,

    :真正的时候是通过接口返回数据的,因此后台处理好随机产生一条数据,然后前台就获取,响应速度也加快。  

     官网API  https://developers.weixin.qq.com/miniprogram/dev/api/wx.onAccelerometerChange.html

      

    如图:

    代码:

      data: {
        isShow: false,
        list:[],
        content: [
          {
            title: '小程序答题01',
          },
          {
            title: '小程序答题02',
          },
          {
            title: '小程序答题03',
          },
          {
            title: '小程序答题04',
          },
          {
            title: '小程序答题05',
          },
          {
            title: '小程序答题06',
          },
          {
            title: '员工活动羽毛球赛实施07',
          },
          {
            title: '员工活动羽毛球赛实施08',
          },
          {
             title: '员工活动羽毛球赛实施09',
          },
          {
            title: '员工活动羽毛球赛实施10',
          },
        ],
      },
    
    
    /**
       * 生命周期函数--监听页面显示
       */
      onShow: function () {
         var that = this;
        this.isShow = true;
       wx.onAccelerometerChange(function (e) {
          if (!that.isShow) {
            return
          }
         
          if (e.x > 1 && e.y > 1) {
            wx.showToast({
              title: '摇成功啦',
              icon: 'success',
              duration: 1000
            })
            let bianlian = that.data.content
            let contentlengths = bianlian.length
            let list= [];
            let random = bianlian[Math.floor(Math.random() * contentlengths)];
            list.push(random);
            that.setData({
              list: list
            });
          }
        })
      },
    
      /**
       * 生命周期函数--监听页面隐藏
       */
      onHide: function () {
        this.isShow = false;
      },
    

      wxml

    <view>
      <view>
        <block wx:for="{{list}}" wx:for-index="index">
    
          <view class='yao'>{{item.title}}</view>
        </block>
        <view wx:if="{{list==null || list==''}}">
          <view class='yao'>拿起手机摇一摇</view>
        </view>
      </view>
    
    </view>

     wxss

    .yao{
      font-weight: bold;
      color:sandybrown; 
      font-size: 50rpx;
      text-align: center;
      margin: 500rpx auto
    }
    

      这样就完成了摇一摇的功能。

  • 相关阅读:
    P3396 哈希冲突 TJ
    U135884 膜法问题 TJ
    U135075 简单数列 TJ
    U135649 皇室战争 TJ
    SF&SJJG-ST表
    牛客NOIP集训三S 牛半仙的妹子数 TJ
    UVA297 四分树 Quadtrees TJ
    UVA679 小球下落 Dropping Balls TJ
    [ACM] CF水题记
    Hoppz的收藏夹
  • 原文地址:https://www.cnblogs.com/LCH-M/p/10283505.html
Copyright © 2011-2022 走看看