VueはExcelデータをエクスポートするパブリック関数メソッドをカプセル化します

VueはExcelデータをエクスポートするパブリック関数メソッドをカプセル化します

vue+element UI は Excel データをエクスポートするためのパブリック関数をカプセル化します

以下に示すように、ストアのモジュールの common.js にパブリック メソッドをカプセル化します。

ここに画像の説明を挿入

コードは次のとおりです。

定数ダウンロード = {
    アクション: {
        downloadData({ コミット, 状態 }, データ) {
            新しい Promise を返します ((resolve, reject) => {
                data.event(data.formData).then(res => {
                    const blob = 新しいBlob([res.data], {
                        タイプ: 'application/vnd.ms-excel'
                    })
                    const objectUrl = URL.createObjectURL(blob)
                    const link = document.createElement('a') // タグを作成する link.href = objectUrl
                    // ファイルの名前を変更する link.download = res.headers['content-disposition'].split(
                        '='
                    )[1]
                    リンク.クリック()
                    URL.revokeObjectURL(オブジェクトURL)
                    解決する
                }).catch((エラー) => {
                    拒否(エラー)
                })
            })
        }

    }

}

エクスポート デフォルト ダウンロード

次に、ストアのインデックスのパブリックモジュールにエクスポートします

ここに画像の説明を挿入

ここに画像の説明を挿入

メソッドを呼び出す必要があるコンポーネントで使用する

メソッド: {
       //データのエクスポートメソッド handleExport(formData) {
            this.loading = true
            定数データ = {
            // '@/api/loan/userLoanList' から { loanDownloadData } をインポートします
            // イベント: loanDownloadData、loanDownloadData はデータをエクスポートするためのインターフェースのキーワードです //formData は loanDownloadData インターフェース イベントに必要なパラメーターです: '', 
                フォームデータ: フォームデータ
            }
            this.$store.dispatch('downloadData', data).then(res => {
                this.loading = false
            }).catch(() => {
                this.loading = false
            })
        },

}

PS: インターフェースが正常にデータを返すことができるのに、インターフェースの呼び出し時にエラーが発生する場合は、インターフェース インターセプション ファイルによって返されるデータが正しくない可能性があります。まず、次のように utils->request.js ファイル (通常はこの場所にあります) を見つけます。

ここに画像の説明を挿入

インターフェースがインターセプトされたとき、エクスポートインターフェースがレスポンスなどのすべてのデータを返す必要がある場合、ヘッダーの名前変更ファイルはcommon.jsファイルで使用する必要があるため、次のようにします。

ここに画像の説明を挿入

一般的に、インターフェースインターセプションは、const res = response.data、return resのようにデータを返すだけでよい。

ここに画像の説明を挿入

Excel データをエクスポートするためのパブリック関数の Vue カプセル化に関するこの記事はこれで終わりです。Vue エクスポート Excel パブリック関数に関するより関連性の高いコンテンツについては、123WORDPRESS.COM で以前の記事を検索するか、次の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

以下もご興味があるかもしれません:
  • Vue フロントエンドでバックエンドから返された Excel ファイルをエクスポートする方法
  • VueはバックエンドインターフェースにExcelテーブルをエクスポートするよう要求します
  • js-xlsx を使用して Vue で Excel をエクスポートする方法
  • Vue フロントエンドの Excel ファイルのエクスポートの詳細な実装計画
  • Vue ベースの Excel 解析とエクスポートの詳細な説明
  • Vue を使用して Excel をエクスポートする際の落とし穴と解決策

<<:  MySQL 8.0.22 のインストールと設定のグラフィックチュートリアル

>>:  MySQL で binlog を使用する際のフォーマットの選択方法

推薦する

WeChatアプレットのスワイパードットのドットをスライダーに変更する方法

目次背景ターゲット効果アイデア成し遂げるスワイパーは変更を聞きますカスタムドットモジュール変更イベン...

IntelliJ IDEA に Docker プラグインをインストールする詳細な手順 (2018 バージョン)

目次1. 開発環境2. dockerプラグインをインストールする1. アイデアのインストール2. イ...

Vue はカードフリップカルーセル表示を実装します

Vueカードのフリップカルーセル表示、フリップ時にデータを切り替えながら、参考までに、具体的な内容は...

docker compose を使用して consul クラスタ環境を構築する例

領事の基本概念サーバーモードとクライアントモードサーバー モードとクライアント モードは、consu...

WMLタグの概要

構造関連タグ--------------------------------------------...

CSS3 フレックスボックス自動記入の書き方を詳しく解説

この記事では、主に CSS3 フレックス エラスティック ボックスの自動塗りつぶしの書き方について詳...

シンプルなメッセージボードケースを実現するJavaScript

参考までに、Javascriptを使用してメッセージボードの例(メッセージ削除あり)を実装します。具...

JavaScript を使用して userAgent を通じていくつかの一般的なブラウザを判別する方法

序文通常、h5 ページを作成するときは、WeChat、QQ、Weibo などのエコシステム内でトラフ...

mysql indexof関数の使用手順

以下のように表示されます。 LOCATE(部分文字列、文字列)文字列 str 内の部分文字列 sub...

JavaScript のクロージャの詳細な説明

導入クロージャは JavaScript の非常に強力な機能です。いわゆるクロージャは関数内の関数です...

tinyMCEの使い方と体験の詳細な説明

tinyMCE の使用方法の詳細な説明初期化TinyMCE を初期化するときは、ページの HEAD ...

MySQL の列から行への変換、フィールドの結合方法 (必読)

データシート:列から行へ: max(case when then) を使用max---集計関数は最大...

CSS3 で画像ドロワー効果を実装するためのサンプル コード

いつものように、まずは画像効果を投稿しましょう: このエフェクトの原理は非常にシンプルです。CSS3...

HTMLタグを閉じるのを忘れないでください

Web 標準に準拠した Web ページの構築は、jb51.net が常に全員と議論しているトピックで...