Vue でデータのページングと表示を実装する方法
Vue は、Web 開発で広く使用されている人気のフロントエンド JavaScript フレームワークです。データ駆動型およびコンポーネントベースの機能により、開発者はデータを処理し、インタラクティブなユーザー インターフェイスをより簡単に構築できるようになります。
実際の開発では、ページ内に大量のデータを表示する必要がある場面に遭遇することがよくあります。この記事では、Vue フレームワークを使用してデータのページングと表示を実装する方法を紹介し、具体的なコード例を示します。
1. 準備
まず、Vue フレームワークをプロジェクトにインポートする必要があります。 CDN を介して導入することも、npm を使用してインストールしてから、import ステートメントを介してインポートすることもできます。
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Vue Pagination</title> </head> <body> <div id="app"> <!-- 数据列表 --> <ul> <li v-for="item in currentPageData" :key="item.id">{{ item.name }}</li> </ul> <!-- 分页器 --> <div> <button @click="prevPage">上一页</button> <span>{{ currentPage }}</span> <button @click="nextPage">下一页</button> </div> </div> <script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script> <script> // 创建Vue实例 new Vue({ el: '#app', data: { currentPage: 1, // 当前页码 pageSize: 10, // 每页显示的数据条数 dataList: [], // 数据列表 }, computed: { // 计算属性,根据当前页码和每页显示的数据条数,计算当前页显示的数据 currentPageData() { const start = (this.currentPage - 1) * this.pageSize; const end = start + this.pageSize; return this.dataList.slice(start, end); }, }, methods: { // 上一页 prevPage() { if (this.currentPage > 1) { this.currentPage--; } }, // 下一页 nextPage() { if (this.currentPage < this.totalPages) { this.currentPage++; } }, }, created() { // ajax请求获取数据 // 这里使用setTimeout模拟异步请求 setTimeout(() => { this.dataList = [ { id: 1, name: '数据1' }, { id: 2, name: '数据2' }, // ... { id: 100, name: '数据100' }, ]; }, 1000); }, }); </script> </body> </html>
上記のコードは、最も基本的なページング関数の例です。 Vue インスタンスでは、ページング ロジックを制御するためのいくつかのデータとメソッドを定義します。
- data 属性では、currentPage (現在のページ番号)、pageSize (各ページに表示されるデータの数)、dataList (データのリスト) の 3 つの変数が定義されています。
- 属性を計算することにより、currentPage と pageSize に基づいて currentPageData が計算されます。これは現在のページに表示されるデータです。
- 2 つのメソッド prevPage と nextPage を定義します。これらは、それぞれ前のページと次のページにジャンプするために使用されます。この 2 つの方法のうち、まず総ページ数を超えないように判断してください。
- 作成されたフック関数では、非同期リクエストがシミュレートされ、setTimeout タイマーによって 1 秒の遅延でデータが dataList に保存されます。
- テンプレートでは、v-for 命令を使用して currentPageData 内のデータをループアウトし、v-bind 命令を使用してキー属性を関連付けます。
- ページネータ部分は、ボタンとバインディング イベントを通じて「前のページ」と「次のページ」の機能を実装し、現在のページ番号を表示します。
上記のコードは基本的なページング表示のみを実装しています。実際のプロジェクトでは、指定したページへのジャンプや総ページ数の表示など、より複雑なロジックが必要になる場合があります。ただし、基本的な考え方は同じで、現在のページ番号と各ページに表示されるデータの数に基づいて、現在のページに表示されるデータが計算されます。
以上がVue でデータのページングと表示を実装する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック









Vue.jsは、主にフロントエンド開発に使用されます。 1)ユーザーインターフェイスとシングルページアプリケーションの構築に焦点を当てた軽量で柔軟なJavaScriptフレームワークです。 2)Vue.jsのコアはその応答性データシステムであり、データが変更されるとビューは自動的に更新されます。 3)コンポーネントの開発をサポートし、UIを独立した再利用可能なコンポーネントに分割できます。

記事では、開発、統合、メンテナンスのベストプラクティスなど、カスタムVue.jsプラグインの作成と使用について説明します。

この記事では、vue.jsでツリーシェーキングを使用して未使用のコードを削除し、ES6モジュールを使用したセットアップ、Webパック構成、および効果的な実装のためのベストプラクティスの詳細について説明します。

Vue.jsは、特にJavaScriptファンデーションを持つ開発者にとって、学ぶのは難しくありません。 1)その進歩的な設計とレスポンシブシステムは、開発プロセスを簡素化します。 2)コンポーネントベースの開発により、コード管理がより効率的になります。 3)使用例は、基本的および高度な使用法を示しています。 4)一般的なエラーは、vuedevtoolsを介してデバッグできます。 5)V-IF/V-Showや重要な属性を使用するなど、パフォーマンスの最適化とベストプラクティスは、アプリケーションの効率を向上させることができます。

VUE.JSは、コンポーネントベースのアーキテクチャ、パフォーマンスのための仮想DOM、およびリアルタイムのUI更新用のリアクティブデータバインディングでWeb開発を強化します。

この記事では、さまざまなビルドターゲットにVue CLIを構成し、環境を切り替え、生産ビルドを最適化し、デバッグ用のソースマップを確保する方法について説明します。

この記事では、VUEを使用してDockerを展開するために説明し、コンテナ内のVUEアプリケーションのセットアップ、最適化、管理、およびパフォーマンス監視に焦点を当てています。

json.parse()stringにオブジェクトを使用することは、最も安全で効率的です。文字列がJSON仕様に準拠していることを確認し、一般的なエラーを回避します。 Try ... CATCHを使用して例外を処理して、コードの堅牢性を向上させます。セキュリティリスクがあるeval()メソッドの使用は避けてください。巨大なJSONの弦の場合、パフォーマンスを最適化するために、チャンクされた解析または非同期解析を考慮することができます。
