この記事では、ウォーターフォールフローが底に達したときにデータを動的にロードするためのjsの具体的なコードを紹介します。参考までに、具体的な内容は次のとおりです。 // onScrollEvent スクロールバーイベント <div class="box" ref="box" @mousewheel="onScrollEvent"> //各ブロックの内容は <div class="boxItemStyle" v-for="(userTag, i) in dataSource" :key="i" ref="boxItemStyle"> <a-tag class="moreStyle" @click="more(userTag.primaryParam)"> もっと見る></a-tag> <div v-for="item in userTag.userTag" :key="item.code"> <p> {{item.name}}: {{ アイテム.値 }} </p> </div> </div> //各ブロックの内容終了 </div> 滝レイアウト 滝() { // 余白の幅を減算する var pageWidth = this.$refs.box.offsetWidth - 200 var columns = 4; // 4 列の行を定義します var itemWidth = parseInt(pageWidth / columns); var arr = []; var ノード = document.getElementsByClassName("boxItemStyle") タイムアウトを設定する(() => { //var node1 = Array.from(ノード) // var node2 = Array.prototype.slice.call(nodes) (var i = 0; i < nodes.length; i++) の場合 { ノード[i].style.width = アイテム幅 + "px" if (i < 列) { ノード[i].style.width = アイテム幅 + "px" ノード[i].style.left = アイテム幅 * i + i * 50 + "px" ノード[i].style.top = 0 arr.push(ノード[i].offsetHeight); } それ以外 { // 配列内の最小の高さとそのインデックスを見つけます var minHeight = arr[0]; var インデックス = 0; (var j = 0; j < arr.length; j++) の場合 { (最小高さ>arr[j])の場合{ 最小高さ = arr[j]; インデックス = j; } } ノード[i].style.top = arr[インデックス] + 30 + "px"、 ノード[i].style.left = ノード[index].offsetLeft + 'px'; // 最小列の高さを変更します // 最小列の高さ = 現在の高さ + 接合された列の高さ arr[index] = arr[index] + nodes[i].offsetHeight + 30; // 距離を 30 に設定します } } }, 1000) }, データを動的に読み込む スクロールイベント(){ もし ( this.isScroll && this.$refs.box.scrollHeight - this.$refs.box.scrollTop - this.$refs.box.clientHeight <= 0 ){ this.loading = true if (this.ipagination.current == 1) { this.ipagination.current += 1 } パラメータを {} とします param['pageNo'] = this.ipagination.current param['pageSize'] = this.ipagination.pageSize param['portraitId'] = this.portraitId postAction(this.url.list, { ...param }).then((res) => { this.loading = false (res.成功)の場合{ this.isScroll = res.records this.dataSource = this.dataSource.concat(res.result.records || res.result) this.waterFall(); } }) this.ipagination.current++ } }, 以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。 以下もご興味があるかもしれません:
|
<<: コード分析を実現するためのFastDFSとNginxの統合
開発の問題点開発プロセスでは、データベース フィールドが頻繁に変更されるため、RD 環境と QA 環...
Mysqlトランザクション操作の失敗を解決する方法トランザクションの原子性: トランザクションは、デ...
目次問題を見つける1. 改行と復帰を削除する方法2. SELECTクエリで「改行と復帰」を無視する方...
場合によっては、リモート マシンでいくつかのコマンドを実行する必要があることがあります。これが時々行...
例示するMySql Community Edition は、5.7.11 以降、テーブルベースのデー...
目次1. グループクエリの概略図2. groupbyキーワード構文の詳細な説明3. 簡単なグループク...
まずmysqlの圧縮バージョンをダウンロードします。公式ダウンロードアドレスは123WORDPRES...
1. MySQLイメージをダウンロードするコマンド: docker pull mysql 2. コン...
/****************** * 高度な文字デバイス ドライバー ***********...
doctype もその 1 つです。 <!DOCTYPE HTML PUBLIC "...
目次MVCとMVVMの違い前述のMVCC の概要長所と短所MVVM概要MVVM 実装者 — Vue ...
1. 表タグはtable、trは行、tdはセル、cellspacingはセル間の距離、cellpad...
目次JavaScript のプライベート クラス フィールドとプライバシーの必要性JavaScrip...
この記事では、CSS で記事の区切り線を実装するさまざまな方法をまとめています。区切り線はページを美...
VScode リモートデバッグ Linux プログラムの問題について見てみましょう。具体的な内容は以...