Vueでツリーテーブルをそのままエクスポートする方法
ツリー テーブルはプロジェクトで一般的な表示方法であり、Vue は現在フロントエンドで最も一般的に使用されているフレームワークの 1 つです。では、Vue でツリーテーブルをそのままエクスポートするにはどうすればよいでしょうか?以下に、これを実現するための 1 つの方法を紹介します。
方法
まず、データを Excel テーブルにエクスポートできる xlsx
ライブラリをインストールする必要があります。コマンド ラインに次のコマンドを入力してインストールします:
npm install xlsx --save
次に、関数をカプセル化して Excel ファイルを生成する必要があります:
import XLSX from 'xlsx' export function exportTreeExcel(dataList, columns, fileName) { const ws = XLSX.utils.json_to_sheet(getExportData(dataList, columns)) // 将数据转换成excel需要的一个二维数组形式 const wb = XLSX.utils.book_new() XLSX.utils.book_append_sheet(wb, ws, 'Sheet1') XLSX.writeFile(wb, `${fileName}.xlsx`) } // 数据整理,将树型数据扁平化,去掉树形结构,同时处理成需要导出的字段 function getExportData(dataList, columns) { const res = [] dataList.forEach(item => { const tmp = {} columns.forEach(col => { tmp[col.label] = item[col.prop] }) res.push(tmp) if (item.children && item.children.length) { // 如果有子节点,则递归处理 res.push(...getExportData(item.children, columns)) } }) return res }
このコードでは、関数をカプセル化します exportTreeExcel
。エクスポートするデータ、列情報、エクスポート ファイルの名前という 3 つのパラメーターを受け入れます。この関数では、まず getExportData
関数を呼び出してツリー データをフラット化し、エクスポートする必要があるフィールドを抽出します。次に、XLSX ライブラリを使用してデータを Excel 形式に変換し、writeFile
メソッドを通じてデータをファイルに書き込みます。
getExportData
この関数は、ツリー データを平坦化し、エクスポートする必要があるフィールドを抽出するために使用されます。この関数では、現在のノードに子ノードがあるかどうかを判断し、子ノードがある場合は、その子ノードを再帰的に処理し、結果の配列に子ノードのデータを追加します。
最後に、ツリー テーブルをエクスポートする必要がある exportTreeExcel
関数を呼び出すことができます。
例:
export default { data() { return { dataList: [ { id: 1, name: 'A', children: [ { id: 2, name: 'A-1', children: [ { id: 3, name: 'A-1-1', children: [] } ] } ] }, { id: 4, name: 'B', children: [] } ], columns: [ { label: '编号', prop: 'id' }, { label: '名称', prop: 'name' } ] } }, methods: { exportExcel() { exportTreeExcel(this.dataList, this.columns, 'tree-table') } } }
上の例では、exportTreeExcel
関数を呼び出して、ツリー テーブル データを Excel ファイルにエクスポートします。この例のように、この関数をツール ライブラリにカプセル化して、他のコンポーネントで簡単に呼び出すことができます。
まとめ
以上はVueでツリーテーブルをそのままエクスポートする方法です。この方法を使用すると、ツリー テーブル データを Excel ファイルにエクスポートして、他のユーザーが簡単に表示および処理できるようになります。他の実装方法がある場合は、コメント欄で共有してください。
以上が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)

ホットトピック









この記事では、functionコンポーネントでのデータフェッチやDOM操作などの副作用を管理するためのフックであるReactの使用Effectについて説明します。メモリリークなどの問題を防ぐための使用、一般的な副作用、およびクリーンアップについて説明します。

記事では、Connect()、MapStateToprops、MapDispatchToprops、およびパフォーマンスへの影響を説明するReduxストアに反応コンポーネントをReduxストアに接続します。

この記事では、ReactのUseContextを説明しています。これにより、小道具掘削を避けることで国家管理を簡素化します。再レンダーの削減により、集中状態やパフォーマンスの改善などの利点について説明します。

記事では、PreventDefault()メソッドを使用して、イベントハンドラーのデフォルト動作の防止、ユーザーエクスペリエンスの強化などの利点、およびアクセシビリティの懸念などの潜在的な問題について説明します。

この記事では、予測可能性、パフォーマンス、ユースケースなどの側面に焦点を当てた、Reactの制御されていないコンポーネントと制御されていないコンポーネントの利点と欠点について説明します。それらを選択する際に考慮することを要因についてアドバイスします。

ReactはJSXとHTMLを組み合わせてユーザーエクスペリエンスを向上させます。 1)JSXはHTMLを埋め込み、開発をより直感的にします。 2)仮想DOMメカニズムは、パフォーマンスを最適化し、DOM操作を削減します。 3)保守性を向上させるコンポーネントベースの管理UI。 4)国家管理とイベント処理は、インタラクティブ性を高めます。

VUE 2の反応性システムは、直接配列インデックス設定、長さの変更、およびオブジェクトプロパティの追加/削除と闘っています。開発者は、Vueの突然変異法とVue.set()を使用して、反応性を確保することができます。

この記事では、< route>を使用して、Reactルーターのルートの定義について説明します。パス、コンポーネント、レンダリング、子供、正確、ネストされたルーティングなどの小道具をカバーするコンポーネント。
