カウントダウン機能を実装するための WeChat パブリック アカウントの開発 (純粋なコード)

php是最好的语言
リリース: 2018-07-27 16:35:49
オリジナル
9084 人が閲覧しました

以下は私が自分で書いたコードで、WeChat公式アカウントの開発過程でカウントダウンを実装する機能です。結果は次のとおりです。注文が送信されました。2 分 57 秒以内に支払いを完了してください。純粋なコード分析。

カウントダウン機能を実装するための WeChat パブリック アカウントの開発 (純粋なコード)

当初のアイデアでは、ページがバックグラウンドで実行され、画面がロックされている状況が考慮されていませんでした。コードは次のとおりです:

let interval = setInterval(() => {
            let {staticTime} = this.state;
            staticTime = staticTime - 1;
            if (staticTime <= 0) {
                clearInterval(interval);
                this.setState({
                    tip:&#39;支付超时&#39;,
                    staticTime:0
                });
                return;
            }
            let minutes = parseInt(staticTime/60);
            let Seconds = staticTime%60;
            let tip = &#39;订单已提交,请在&#39;+minutes+&#39;分&#39;+Seconds+&#39;秒内完成支付&#39;;
            this.setState({
                tip:tip,
                staticTime:staticTime 
            });
        }, 1000);
后来测试发现锁屏或者把页面留在后台,计算就不对,于是把代码进行了如下改造。



  let interval = setInterval(() => {
            let {backGroundTime, staticTime} = this.state;
            this.setState({
                backGroundTime:0
            });
            staticTime = staticTime - backGroundTime - 1; 
            if (staticTime <= 0) {
                clearInterval(interval);
                this.setState({
                    tip:&#39;支付超时&#39;,
                    staticTime:0,
                });
                return;
            }
            let minutes = parseInt(staticTime/60);
            let Seconds = staticTime%60;
            let tip = &#39;订单已提交,请在&#39;+minutes+&#39;分&#39;+Seconds+&#39;秒内完成支付&#39;;
            this.setState({
                tip:tip,
                staticTime:staticTime,
            });
        }, 1000);
        this.listenPageShowHideHandle();
    
     //计算页面在后台的时间
ログイン後にコピー

listenPageShowHideHandle = () => マイクロサイトの実装方法を開いてログインできます

関連ビデオ:

Chuanzhi、Heima WeChatパブリックプラットフォーム開発ビデオチュートリアル

以上がカウントダウン機能を実装するための WeChat パブリック アカウントの開発 (純粋なコード)の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート