欧美一级特黄大片做受成人-亚洲成人一区二区电影-激情熟女一区二区三区-日韩专区欧美专区国产专区

微信小程序本地存儲怎么實現(xiàn)每日簽到、連續(xù)簽到功能-創(chuàng)新互聯(lián)

這篇文章主要介紹了微信小程序本地存儲怎么實現(xiàn)每日簽到、連續(xù)簽到功能的相關(guān)知識,內(nèi)容詳細易懂,操作簡單快捷,具有一定借鑒價值,相信大家閱讀完這篇微信小程序本地存儲怎么實現(xiàn)每日簽到、連續(xù)簽到功能文章都會有所收獲,下面我們一起來看看吧。

銀州ssl適用于網(wǎng)站、小程序/APP、API接口等需要進行數(shù)據(jù)傳輸應(yīng)用場景,ssl證書未來市場廣闊!成為成都創(chuàng)新互聯(lián)公司的ssl證書銷售渠道,可以享受市場價格4-6折優(yōu)惠!如果有意向歡迎電話聯(lián)系或者加微信:13518219792(備注:SSL證書合作)期待與您的合作!

先說說相關(guān)注意吧:

其一就是 storage中只能存放字符串!

我去,昨晚大部分時間都是在搞這個。以前一直認為存放的是對象,興致勃勃寫完發(fā)現(xiàn)點擊以后出現(xiàn)了“NAN”…

覺得 事情并沒有這么簡單。

仔細回去看了一下曾經(jīng)Vue寫過的localStorage,發(fā)現(xiàn)一直弄錯了,應(yīng)該存放字符串!

搞清楚這個以后,又有一個問題:你要“ 點擊加1 ”,這里總是把數(shù)字和字符串弄反,甚至想了用數(shù)組形式存放。。。最終想到了解決辦法:把存放的字符串轉(zhuǎn)為數(shù)字,加1后再轉(zhuǎn)為字符串存放到storage中 。

想到這我不禁喜形于色,終于可以了!

但是當我無意中狂點16下的時候,我又哭了…

new Date()函數(shù)控制日期——一分鐘/一天/…只能點一次:

var D=(new Date()).getDate().toString();
 if(D != wx.getStorageSync('D')){ //判斷是否過了當天
  //如果是新的一天,則...
 }else{
 //否則,例如:
  wx.showToast({
  title: '今日打卡已完成!',
  icon:'loading',
  duration:1200,
  mask:true
  })
 }

這里又出現(xiàn)一個問題,我在當前頁面開始時onLoad里面加了一段代碼:把當前時間存放到storage中,但是我發(fā)現(xiàn),這樣以后就點不了了(當天),為什么?


因為沖突了啊,加載頁面時存放此時時間,那么你如果在這個事件內(nèi)(本例:一天)去點擊,如上面代碼第一、二行,它不成立——都是“今天”,所以會執(zhí)行else語句。


解決辦法: 去掉onLoad函數(shù),這樣開始執(zhí)行if時候會發(fā)現(xiàn)storage中沒有存儲,也就“!=”了。

下面放上示例代碼:


hello.wxml

<view class="container">
 <view class="mxc1">
 <text>您已簽到 {{firstTime}} 次</text>
 </view>
 <view class="{{flag?'mxc2-1':'mxc2-2'}}" bindtap="onBindTap">
 <text>我要簽到</text>
 </view>
</view>

hello.wxss

.container{
 background-color: ghostwhite;
 width: 100%;
 height: 100%;
 flex-direction: column;
 display: flex;
 align-items: center;
 min-height: 100vh;
}
.mxc1{
 position: relative;
 width: 100%;
 height: 400rpx;
 border-top: 1px solid #000;
 border-bottom: 1px solid #000;
 margin-top: -70rpx;
 flex-direction: column;
 display: flex;
 align-items: center;
 background-color: #efeff4;
}
.mxc1 text{
 font-size: 30rpx;
 font-weight: bold;
 line-height: 400rpx;
}
.mxc2-1{
 position: absolute;
 width: 60%;
 height: 74rpx;
 border: 1px solid rgba(247, 2, 2, 0.959);
 background-color: rgba(247, 2, 2, 0.959);
 border-radius: 3px;
 flex-direction: column;
 display: flex;
 align-items: center;
 margin-top: 396rpx;
}
.mxc2-1 text{
 color: white;
 font-size: 32rpx;
 line-height: 74rpx;
}
.mxc2-2{
 position: absolute;
 width: 60%;
 height: 74rpx;
 border: 1px solid rgba(182, 177, 177, 0.959);
 background-color: rgba(182, 177, 177, 0.959);
 border-radius: 3px;
 flex-direction: column;
 display: flex;
 align-items: center;
 margin-top: 396rpx;
}
.mxc2-2 text{
 color: #000;
 font-size: 32rpx;
 line-height: 74rpx;
}

hello.js

Page({
 data:{
 firstTime:'0',
 flag:true
 },
 onBindTap:function(){
 var D=(new Date()).getDate().toString();
 if(D != wx.getStorageSync('D')){
  wx.setStorageSync('D', D);
  wx.setStorage({
  key: 'FirstTime',
  data: (parseInt(this.data.firstTime) + 1).toString(),
  })
  var that = this;
  var firstTime = wx.getStorage({
  key: 'FirstTime',
  success: function (res) {
   that.setData({
   firstTime: res.data,
   flag:false
   })
   wx.showToast({
   title: '簽到成功!',
   icon: 'success',
   duration: 1200,
   mask: true
   })
  },
  })
 }else{
  wx.showToast({
  title: '今日打卡已完成!',
  icon:'loading',
  duration:1200,
  mask:true
  })
 }
 },
 onShow:function(options){
 var that = this;
 var firstTime = wx.getStorage({
  key: 'FirstTime',
  success: function (res) {
  that.setData({
   firstTime: res.data
  })
  },
 })
 var D = (new Date()).getDate().toString();
 if (D != wx.getStorageSync('D')){
  this.setData({
  flag:true
  })
 }else{
  this.setData({
  flag:false
  })
 }
 },
})

hello.json

{
 "navigationBarTitleText": "簽到",
 "navigationBarTextStyle": "black",
 "navigationBarBackgroundColor": "ghostwhite"
}

擴展時刻:

剛剛實現(xiàn)了簡單的簽到功能,那么,怎么實現(xiàn)連續(xù)簽到呢?

我想了一晚上,因為剛開始時思路跑到了“誤區(qū)”——判斷點擊后加1的事件是否匹配。但是你點擊后加1是個被動事件,條件就是點擊,拿這個判斷豈不是很難受?

于是,我們同樣可以用parseInt()函數(shù)來把當前日期(時間)和緩存日期(時間)作比較 ,判斷他們是否滿足:

var D=(new Date()).getDate().toString();

在點擊事件onBindTap里:

var DT=wx.getStorageSync('D');
if(parseInt(D)!=parseInt(DT)+1){
 //非連續(xù)簽到 對應(yīng)的操作
}else{
 //連續(xù)簽到
}

易錯點提示:


上面 hello.js 代碼中有這么一行:this.data.firstTime

那有沒有人想過 只寫firstTime?


小程序中用data中的數(shù)據(jù)(變量)必須加上“this.data.”前綴!


關(guān)于“微信小程序本地存儲怎么實現(xiàn)每日簽到、連續(xù)簽到功能”這篇文章的內(nèi)容就介紹到這里,感謝各位的閱讀!相信大家對“微信小程序本地存儲怎么實現(xiàn)每日簽到、連續(xù)簽到功能”知識都有一定的了解,大家如果還想學(xué)習(xí)更多知識,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。

網(wǎng)站名稱:微信小程序本地存儲怎么實現(xiàn)每日簽到、連續(xù)簽到功能-創(chuàng)新互聯(lián)
網(wǎng)頁URL:http://aaarwkj.com/article46/cchieg.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供營銷型網(wǎng)站建設(shè)、Google域名注冊、做網(wǎng)站軟件開發(fā)、企業(yè)網(wǎng)站制作

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

商城網(wǎng)站建設(shè)
亚洲中文字幕在线不卡| 国产av剧情极品丝袜美女| 四虎在线观看最新入口| 四虎免费在线高清观看| 日韩人妻有码中文字幕| 周妍希浴室视频色哟哟| 日本久久精品视频一区| 末满18周岁禁止观看| av一级免费在线观看| 熟妇激情欧美在线播放视频| 日本 一区二区在线| 亚洲中文自偷自拍另类| 日韩电影在线播放中文字幕| 少妇高潮毛片免费看高潮 | 一区二区三区毛片av网站| 未满十八勿进黄网观看| 国产亚洲精品视频在线网| 国产男女猛进猛出精品91| 久久中文字幕人妻熟av| 亚洲欧美日韩国产在线一区| 国产熟女真实乱精品视频| 日韩欧美另类精品在线| 久久国产精品午夜亚洲欧美| 在线观看视频网站一卡二卡| 日本少妇人妻一区二区| 久久热视频这里有精品| 精品妇女一区二区三区| 97资源视频在线播放| 日韩欧美亚洲综合久久精品 | 一区二区三区日韩激情| 久久精品一区二区婷婷| 欧美v日韩v亚洲综合国产高清| 国产熟女系列一区二区三区| 欧美亚洲午夜精品久久久| 久久精品国产亚洲av清纯| 国产成年人免费小视频| 欧美日韩精品激情一区二区| 国产精精精精品欧美日韩| 国产内射一级一片内射高清视频1 亚洲一区二区三区不卡伦理 | 久久五月精品综网中文字幕| 亚洲欧美日韩另类精品一区二区三区|