Vue と Excel のゴールデン パートナー: データを動的にフィルターしてエクスポートする方法
Vue と Excel のゴールデン パートナー: 動的フィルタリングとデータのエクスポートを実現する方法
インターネット技術の急速な発展に伴い、Web アプリケーションの数と機能はますます豊富になってきています。最も一般的なニーズの 1 つは、データの表示とエクスポートです。 Vue.js のようなフロントエンド フレームワークでは、動的フィルタリングとデータのエクスポートを簡単に実装できます。ユーザーのニーズにさらに応えるために、Excel と組み合わせて、より強力なデータ操作および分析機能を提供できます。
この記事では、Vue.js を使用してテーブルを通じてデータを表示し、動的フィルターとエクスポート機能を実装する方法を紹介します。具体的な実装では、優れた UI コンポーネント ライブラリである Element UI と、強力な Excel ファイル操作ライブラリである xlsx を使用します。
-
準備
まず、Vue CLI をインストールし、新しい Vue プロジェクトを作成する必要があります。プロジェクト ディレクトリで、次のコマンドを実行します。npm install -g @vue/cli vue create excel-demo cd excel-demo
ログイン後にコピー次に、デフォルト構成を選択します。
次に、Element UI と xlsx をインストールする必要があります。プロジェクト ディレクトリで、次のコマンドを実行します。
npm install element-ui xlsx
- データ表示の実装
src ディレクトリに、views という名前のフォルダを作成し、そのドキュメント内に Home.vue という名前のフォルダを作成します。次に、Home.vue ファイルの編集を開始できます。
最初に、必要なコンポーネントとスタイルを導入します。
<template> <div class="home"> <el-row> <el-col :span="6"> <h3>数据过滤</h3> <el-input v-model="keyword" placeholder="请输入关键字"></el-input> </el-col> </el-row> <el-row> <el-col :span="24"> <h3>数据展示</h3> <el-table :data="filteredData" border> <el-table-column prop="id" label="ID"></el-table-column> <el-table-column prop="name" label="姓名"></el-table-column> <el-table-column prop="age" label="年龄"></el-table-column> </el-table> </el-col> </el-row> <el-row> <el-col :span="6"> <el-button type="primary" icon="el-icon-download" @click="exportData">导出数据</el-button> </el-col> </el-row> </div> </template> <script> import { mapState } from "vuex"; import { exportJsonToExcel } from "@/utils/exportExcel.js"; export default { data() { return { keyword: "" }; }, computed: { ...mapState(["data"]), filteredData() { return this.data.filter(item => item.name.includes(this.keyword) ); } }, methods: { exportData() { exportJsonToExcel(this.filteredData, "data"); } } }; </script> <style scoped> h3 { margin-top: 20px; margin-bottom: 10px; } </style>
- データ エクスポート
src/utils ディレクトリに、exportExcel.js という名前のファイルを作成します。次に、exportExcel.js ファイルの編集を開始できます。
import XLSX from "xlsx"; export function exportJsonToExcel(json, fileName) { const data = json.map(item => { return { ID: item.id, 姓名: item.name, 年龄: item.age }; }); const worksheet = XLSX.utils.json_to_sheet(data); const workbook = XLSX.utils.book_new(); XLSX.utils.book_append_sheet(workbook, worksheet, "Sheet1"); const excelBuffer = XLSX.write(workbook, { bookType: "xlsx", type: "array" }); saveAsExcel(excelBuffer, fileName); } function saveAsExcel(buffer, fileName) { const data = new Blob([buffer], { type: "application/octet-stream" }); const link = document.createElement("a"); link.href = URL.createObjectURL(data); link.download = fileName + ".xlsx"; link.click(); }
上記の手順を完了したら、Vue プロジェクトを実行して、動的フィルタリングとデータのエクスポートの機能を体験できます。
概要
Vue.js と Excel の黄金のパートナーシップを通じて、データの動的フィルタリングとエクスポートを簡単に実装できます。実際のアプリケーションでは、特定のニーズに応じてこれらの機能をさらに拡張および最適化し、より優れたユーザー エクスペリエンスとデータ分析機能を提供できます。この記事があなたのお役に立てれば幸いです、読んでいただきありがとうございます!
付録
完全なサンプル コードは、私の Github にあります: [https://github.com/example/repo](https://github.com/example/repo)
以上がVue と Excel のゴールデン パートナー: データを動的にフィルターしてエクスポートする方法の詳細内容です。詳細については、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)

ホットトピック









HTMLテンプレートのボタンをメソッドにバインドすることにより、VUEボタンに関数を追加できます。 VUEインスタンスでメソッドを定義し、関数ロジックを書き込みます。

vue.jsでJSファイルを参照するには3つの方法があります。タグ;; mounted()ライフサイクルフックを使用した動的インポート。 Vuex State Management Libraryを介してインポートします。

vue.jsでBootstrapを使用すると、5つのステップに分かれています。ブートストラップをインストールします。 main.jsにブートストラップをインポートしますブートストラップコンポーネントをテンプレートで直接使用します。オプション:カスタムスタイル。オプション:プラグインを使用します。

Vue.jsの監視オプションにより、開発者は特定のデータの変更をリッスンできます。データが変更されたら、Watchはコールバック関数をトリガーして更新ビューまたはその他のタスクを実行します。その構成オプションには、すぐにコールバックを実行するかどうかを指定する即時と、オブジェクトまたは配列の変更を再帰的に聴くかどうかを指定するDEEPが含まれます。

vue.jsには、前のページに戻る4つの方法があります。$ router.go(-1)$ router.back()outes&lt; router-link to =&quot;/&quot; Component Window.history.back()、およびメソッド選択はシーンに依存します。

CSSアニメーションまたはサードパーティライブラリを使用して、VUEでマーキー/テキストスクロール効果を実装します。この記事では、CSSアニメーションの使用方法を紹介します。スクロールテキストを作成し、テキストを&lt; div&gt;をラップします。 CSSアニメーションを定義し、オーバーフローを設定します:非表示、幅、アニメーション。キーフレームを定義し、アニメーションの開始と終了時にtranslatex()を設定します。期間、スクロール速度、方向などのアニメーションプロパティを調整します。

Vue Devtoolsを使用してブラウザのコンソールでVueタブを表示することにより、Vueバージョンを照会できます。 NPMを使用して、「NPM List -G Vue」コマンドを実行します。 package.jsonファイルの「依存関係」オブジェクトでVueアイテムを見つけます。 Vue CLIプロジェクトの場合、「Vue -Version」コマンドを実行します。 &lt; script&gt;でバージョン情報を確認してくださいVueファイルを参照するHTMLファイルにタグを付けます。

Vue.jsには配列とオブジェクトを通過するには3つの一般的な方法があります。V-Forディレクティブは、各要素をトラバースしてテンプレートをレンダリングするために使用されます。 V-BindディレクティブをV-Forで使用して、各要素の属性値を動的に設定できます。 .mapメソッドは、配列要素を新しい配列に変換できます。
