免费国产欧美国日产_少妇AV一区二区三区无码_蜜桃精品av无码喷奶水小说_jk18禁网站视频_精产国品一二三级产品区别_被夫の上司に犯波多野结衣_78m成人手机免费看_最爽最刺激18禁视频_偷偷色噜狠狠狠狠的777米奇

易優(yōu)GEO 重磅上線 ~ 一站式GEO優(yōu)化工具,讓豆包、文心一言、DeepSeek 在回答中主動推薦你的品牌,搶占AI流量入口!  點擊查看

小程序模板網(wǎng)

IOS系統(tǒng)中,倒計時(setInterval函數(shù))失效的問題

發(fā)布時間:2017-12-06 16:42 所屬欄目:小程序開發(fā)教程

先說結(jié)論:掛起(顯示在聊天頂部)狀態(tài)無法完美解決,息屏狀態(tài)可以完美解決。 本帖目的只是分享在碰到問題時的解決方法和思路。如果不能解決您的問題就非常抱歉。ps:由于小程序一直在更新中,所以并不保證下面的方 ...

 
 
 

先說結(jié)論:掛起(顯示在聊天頂部)狀態(tài)無法完美解決,息屏狀態(tài)可以完美解決。 
本帖目的只是分享在碰到問題時的解決方法和思路。如果不能解決您的問題就非常抱歉。ps:由于小程序一直在更新中,所以并不保證下面的方法長期有效。

息屏狀態(tài)完美解決方法: 
1、適用場景:通過傳入?yún)?shù)控制倒計時時間的頁面。 
2、解決思路:在息屏和掛起的時候,我們可以通過vConsole可以看到是執(zhí)行了onHide函數(shù)。再打開的時候執(zhí)行的onShow函數(shù),所以我們就可以在onHide函數(shù)做文章了。 
3、解決方案:實踐過后發(fā)現(xiàn)在onHide函數(shù)中使用setTimeout或者setInterval函數(shù)還是不起作用。所以換個方式。 
因為我們的頁面是通過傳入?yún)?shù)控制的倒計時時間,
所以我們在onHide函數(shù)內(nèi)部,redirectTo到當(dāng)前頁面,并將當(dāng)前頁面的剩余倒計時時間傳入做為參數(shù)傳入。由于未知的原因,在息屏狀態(tài)下進行頁面跳轉(zhuǎn)以后,頁面的倒計時還是能繼續(xù)運行(setInterval函數(shù)可以運行),這樣我們就能在息屏狀態(tài)下進行倒計時了。而且倒計時時間不會像安卓那樣會變慢(僅在iphone6下進行測試) 
4、未解決的問題:雖然息屏和掛起都是一樣的執(zhí)行onHide和onShow函數(shù),但是非常遺憾的是,在掛起狀態(tài)下頁面跳轉(zhuǎn)有時會失效(但是神奇的是,會執(zhí)行success函數(shù))并且就算跳轉(zhuǎn)成功,計時器也還是會暫停,原因未知。

掛起狀態(tài)非完美解決方法: 
1、使用場景:大部分倒計時,但是不適用僅僅setInterval的頁面。 
2、解決方案:在開始倒計時的時候獲取一下系統(tǒng)當(dāng)前時間,并加上你的倒計時時間(自行計算)作為結(jié)束時間,由上面可以知道再次打開小程序的時候會執(zhí)行onShow函數(shù),因此只要在這個函數(shù)里面根據(jù)當(dāng)前的時間和結(jié)束時間再次設(shè)置一下倒計時即可。 
ps:經(jīng)過測試發(fā)現(xiàn)目前的番茄鬧鐘就是使用的這種方案。



易優(yōu)小程序(企業(yè)版)+靈活api+前后代碼開源 碼云倉庫:starfork
本文地址:http://m.szcjxy.com/wxmini/doc/course/18047.html 復(fù)制鏈接 如需定制請聯(lián)系易優(yōu)客服咨詢: 點擊咨詢
在線客服