WeChatアプレットは日付と時刻に基づいた並べ替え機能を実装

WeChatアプレットは日付と時刻に基づいた並べ替え機能を実装

最近、小さなプログラム プロジェクトを引き継いだのですが、リストを日付と時刻で並べ替えるという要件があったので、自分で試してみたところ、いくつかの操作を行った後、ようやく解決できました。ここで、私の経験をまとめて皆さんと共有し、皆さんのお役に立てれば幸いです。

要件分析(これが完成した効果です)

具体的な日時と時間は次のとおりです。私に送られてきたバックエンドデータは次のようになります

startDate: "2021-08-27" //日付 年 月 日 startTime: "10:15" //開始時刻 endTime: "20:00" //終了時刻

実装コード

// 日付で並べ替える compareate: function (property) {
    // console.log(プロパティ); 
    関数(a, b)を返す{ 
    var value1 = Date.parse(new Date(a[property])); // 日付を取得するために16進数に変換します var value2 = Date.parse(new Date(b[property]));
    // console.log( 値1 - 値2 );
      return value1 - value2; //value1-value2 は小さい順から大きい順に、またその逆順に並べられます}
},

// 時間で並べ替える 時刻の形式は 10:00 なので、スライスを使用して文字列の最初の 2 桁をインターセプトし、時間の順序を時間ごとに比較します comparehour: function (property) {
  // console.log(プロパティ);
  関数(a, b)を返す{
    var value1 = a.startTime.slice(0,2) //slice(0,2) は比較のために文字列の最初の 2 桁を取得します var value2 = b.endTime.slice(0,2)
    // コンソール.log(値1-値2)
   value1 -value2 を返します //value1-value2 は小さい方から大きい方へ、またその逆順にソートされます}
},

  
MyTaskList:関数(){
    var それ=これ
    wx.リクエスト({
      url: 'リクエストインターフェース',
      データ: {
       //パラメータを入力},
      メソッド: "POST",
      ヘッダー: {
        'コンテンツタイプ': 'アプリケーション/json'
      },
      成功: 関数 (res) {
        // 時間で並べ替え if(res.data.list.orderDetailsList!=""){
          var dataListaaa=res.data.list.orderDetailsList;
          dataListaaa.forEach((item) => {
             var 開始時間 = アイテム.開始時間
              var 終了時間 =item.終了時間

    
          })
                      dataListaaa.sort(that.compareatime('starttime')); //上記の時間ソートメソッドを呼び出す}
        // 日付で並べ替え if(res.data.data=="success"){
          コンソールログ(res);
          if(res.data.list.orderDetailsList!=""){
            var dataList=res.data.list.orderDetailsList;
            dataList.forEach((item) => {
            //ループ後に時間形式を変換します var month=new Date(item.startDate.replace(/-/g,'/')).getMonth()+1;
              var day=new Date(item.startDate.replace(/-/g,'/')).getDate();
              var dateVal=month+'月'+day+'日'; // '月'と'日'を連結する
              項目['startDateFormat']=dateVal;
                // コンソールログ(日);
                
              // コンソールログ(dateVal);
            })
                         dataList.sort(that.comparedate('startDate')); //上記のcomparateと組み合わせたメソッドを使用して日付でソートします

         
  
  },

要約する

以上がWeChatミニプログラムを日時順に並べ替える全プロセスです。皆様のお役に立てれば幸いです。

この記事の内容をすべてご紹介させていただきましたので、123WORDPRESS.COM を応援していただければ幸いです。

以下もご興味があるかもしれません:
  • WeChat アプレットのドラッグ アンド ドロップによる並べ替えリストのサンプル コード
  • WeChatアプレットが指ドラッグオプションの並べ替えを実装
  • WeChat アプレットのドラッグ アンド ドロップによる並べ替え (コード共有)

<<:  Ubuntu 20.04 aptの国内ソースを変更する方法

>>:  Ubuntu 20.04でAliソースを変更する方法

推薦する

VSCode の Remote-SSH を使用して Linux に接続し、リモート開発を行う

Remote-SSHをインストールして設定するまず VSCode を開き、拡張機能を見つけて、Rem...

MySQLの最適化の詳細な分析とパフォーマンス

導入データベースを使用したことがある人なら、機能面での like 記号と = 記号の類似点と相違点を...

Navicatをサーバー上のdockerデータベースに接続する方法

dokekrでmysqlコンテナを起動するコマンドを使用します: docker run -p 330...

要素シャトルフレームのパフォーマンス最適化の実装

目次背景解決新しい質問高度な背景シャトル ボックスが大量のデータを処理すると、レンダリングされる D...

MySQL マスタースレーブレプリケーションの詳細な分析

序文: MySQL では、マスター/スレーブ アーキテクチャが最も基本的かつ最も一般的に使用されるア...

純粋な CSS で DIV サスペンションを実装するサンプル コード (固定位置)

DIV フローティング効果 (固定位置) は CSS のみで実装されており、IE8、360、Fir...

JavaScript配列の簡単な紹介

目次配列の紹介配列リテラル2次元配列要約する配列の紹介配列- Arrayもオブジェクトですこれは通常...

MySQLからHiveにさらにデータをインポートするためのソリューション

元の派生コマンド: bin/sqoop インポート -connect jdbc:mysql://19...

任意の長さの配列を作成または埋めるための JS のヒントの要約

目次序文直接充填方式for ループの push() メソッド配列コンストラクタメソッド配列コンストラ...

Vueカスタム指示により、ポップアップウィンドウのドラッグ4辺ストレッチと対角ストレッチ効果を実現

導入同社の最近の Vue フロントエンド プロジェクトの要件: ポップアップ ウィンドウのドラッグ、...

HTML における if 判断の使用

Django Web開発の過程で、HTMLを書く際にバックエンドから同じ名前のリスト変数が渡されるが...

HTMLを圧縮しない理由はいくつかある

理由は簡単です。 HTML ドキュメントでは、複数の空白文字は 1 つの空白文字と同等です。つまり、...

Dockerがログファイルを保存する場所の詳細な説明

目次ログはどこに保存されますか?コンテナ内のアプリケーションからのログを表示するDockerデーモン...

CentOS7 デプロイメント Flask (Apache、mod_wsgi、Python36、venv)

1. Apacheをインストールする # yum インストール -y httpd httpd-de...

JS を使用して要素がビューポート内にあるかどうかを確認する方法

序文要素がビューポート内にあるかどうかを監視する2つの方法を共有する1. 位置計算Element.g...