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ソースを変更する方法

推薦する

Docker で Jenkins-2.249.3-1.1 をインストールする詳細な手順

目次1. Dockerをインストールする2. Jenkinsイメージファイルを取得する3. マウント...

Flash が HTML div 要素を覆わないようにする方法

今日、フラッシュ広告のコードを書いていたとき、フラッシュに付属するリンクはポップアップ広告と間違われ...

MYSQLの文字セット設定方法(端末の文字セット)の詳しい説明

序文ターミナルを使用してデータベースまたはテーブルを作成するたびに、文字セットが latin1 であ...

Reactは二次連結(左右連結)を実現する

この記事では、二次リンクを実現するためのReactの具体的なコードを参考までに共有します。具体的な内...

Linux プラットフォームの MySQL でリモート ログインを有効にする

開発中、MySQL へのリモートアクセスでよく問題に遭遇します。そのたびに検索する必要があり、面倒に...

MySQL 5.5 で範囲パーティションを追加および削除する例

導入RANGE パーティション分割は、指定された連続した間隔範囲に基づいています。RANGE の初期...

Ubuntu 16.04/18.04 に Pycharm と Ipython をインストールするチュートリアル

Ubuntu 18.04の場合1. sudo apt install python 。コマンドライン...

Navicat for MySql ビジュアルインポート CSV ファイル

この記事では、参考までに、Navicat for MySql の CSV ファイルのビジュアルインポ...

Vue における v-for のキーの一意性の詳細な説明

目次1. DOM の違い2. 同じレイヤーの同じタイプの要素にキー属性を追加する3. キーはインデッ...

JavaScript での正規表現の使用について詳しく学ぶ

目次1. 正規表現とは何か1. 正規表現の特徴2. 正規表現の使用2. 正規表現における特殊文字1....

MySQL シリーズ 3 基礎

目次チュートリアルシリーズ1. MySQL の紹介2. MySQLの開発履歴3. MariaDBの基...

HTML+CSS3+JSで実装されたドロップダウンメニュー

成果を達成する html <div class="コンテナ"> &l...

CSS は Alibaba ベクター ライブラリを使用して、対応する位置に見栄えの良いアイコン効果をすばやく追加します (サンプル コード)

Alibaba ベクターアイコンライブラリにアクセスAlibaba ベクターアイコンライブラリ好き...

Unicode の数学記号の概要

数学、物理学、および一部の科学技術分野で使用される特殊記号は多数あります。Unicode コードには...