formData 形式タイプを使用してファイルをアップロードする Vue の例

formData 形式タイプを使用してファイルをアップロードする Vue の例

Vue では、一般的にフロントエンドとバックエンドを分離したプロジェクトがあり、データ操作を実装するには、axios などのツールを使用してバックグラウンドにリクエストを送信する必要があります。
その中でも、ファイルのアップロードは比較的難しいものです。この記事では、5 分でファイルをアップロードする方法を説明します。

1. たとえば、写真をアップロードする場合、バックエンドはフロントエンドからformDataタイプのデータを転送する必要があります。

<el-button type="primary" @click="uploadFile2()">クリックしてアップロード</el-button>
 <input type="file" @change="fileValueChange2()" ref="uploadFile2" enctype="multipart/form-data" style="display:none;" accept="image/jpeg,image/png,image/gif">

これを実現するためにネイティブ入力を使用します。

アップロードファイル2(){
	// このイベントはボタンがクリックされたときにトリガーされます // この関数はファイルアップロードポップアップボックスを開きます this.$refs.uploadFile2.click()
   },
   ファイル値変更2(){
   // ファイルを選択すると、入力変更イベントがトリガーされ、この関数が入力されます var formData = new FormData()
     // this.$refs.uploadFile2 は Vue で DOM 要素を取得するためのメソッドです // アップロードされたすべてのファイルは files を通じて取得できます。ファイルが複数ある場合は、formData.append('file',this.$refs.uploadFile2.files[0])
     // リクエストタイプを設定する必要があります formData.append('type', "head");
     // ID を渡す必要がある場合は、次のコードを参照してください formData.append('id', this.id);
     // 設定が完了したら、formData 変数をバックエンドに渡すだけです insertNavigationUpload(formData).then(res=>{
       console.log('簡単でしょ?友よ')
     })
   },

1 つのステップを忘れるところでした。axios リクエストの二次カプセル化についてはあまり説明しません。ここではインターフェースのみを示します。

エクスポートconst tMessageNotification = data =>{
  リクエストを返す({
    url:'/tMessageNotification/upload',
    メソッド: 'POST'、
    データ、
    ヘッダー: {'Content-Type': 'application/json'},
  })
}

これで、formData 形式タイプを使用してファイルをアップロードする Vue に関するこの記事は終了です。Vue ファイルのアップロードに関するより関連性の高いコンテンツについては、123WORDPRESS.COM の以前の記事を検索するか、次の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

以下もご興味があるかもしれません:
  • Vue で axios を使用してファイル (FormData) をアップロードする方法
  • Vue formDataは画像のアップロードを実現します
  • VueはformDataを使用してデータをバックグラウンドに送信します
  • VuejsはFormDataを使用して画像ファイルのAjaxアップロードを実装します。
  • vue+element_uiはファイルをアップロードし、追加のパラメータを渡します
  • Vue のバックグラウンド例にファイルをアップロードする詳細な説明
  • ファイルアップロード機能を実現するVue Element UI + OSS

<<:  LinuxのCentos7でmysql5.7.29を構築する詳細なプロセス

>>:  Tencent Cloud Serverをゼロから導入する方法

推薦する

MySql 8.0 と対応するドライバー パッケージの一致に関する注意事項

MySql 8.0 対応ドライバパッケージのマッチングMySql データベースをバージョン 8.0 ...

Linuxファイルを表示するコマンドの詳細な説明

Linuxファイルを表示する方法ファイルの内容を表示するコマンド: catは最初の行からコンテンツを...

初心者のための入門チュートリアル⑤:ウェブサイト登録はとても簡単、簡単な登録のヒント

スペースを購入してウェブサイトを構築したことがある友人なら、ウェブサイトは正式に開設する前に登録する...

JavaScript を使用して div の位置をドラッグして入れ替える例

1 実施原則これは、DOM 要素の dragstart/ondragover/ondrop イベント...

適応レイアウトの処理について(フロートとマージンネガティブマージンを使用)

適応型レイアウトは、実際のアプリケーションでますます一般的になっています。今日は、主にフローティング...

数百万のデータボリュームに対する MySQL ページングクエリ方法とその最適化の提案

データベース SQL の最適化はよくある問題です。何百万ものデータ ボリュームに対してページング ク...

Linux環境にMySQLデータベースをインストールする詳細なチュートリアル

1. データベースをインストールする1) yum -y install mysql-server (...

CSSを使用してAndroidシステムの読み込みアニメーションを実装する

Web には一般的な読み込みアイコンが 2 つあります。1 つは iOS の「菊」、もう 1 つは ...

mysql.data.dll ドライバーのさまざまなバージョンの簡単な分析

ここにmysqlドライバmysql.data.dllがあります知らせ:ここではX86バージョンが多く...

mysql maxとwhere間の実行問題の概要

mysql maxとwhereの間の実行の問題SQLを実行します: テーブル「grades」を作成し...

CSS3ダイヤモンドパズルはdivのみを回転し、背景画像は回転しない機能を実現します

需要背景プロジェクトはVueを使用して作成され、ビジネス要件にはパズル効果があります。デフォルトの背...

Vue3.0のさまざまなリスニング方法の包括的な概要

目次リスナー1.ウォッチエフェクト2.見る1.1 聴くための最初の方法1.2 聞く2つ目の方法1.3...

各 Nginx プロセスで開くことができるファイルの最大数を設定する方法

1. システム内で開いているファイルの最大数を確認する #現在のリソース制限設定を表示する ulim...

フロントエンドページのポップアップマスクはページのスクロールを禁止します

フロントエンド開発者がよく遭遇する問題は、ユーザーに情報を提示するためのポップアップ ウィンドウを作...

Angularコンポーネントの仲介モードの詳細な説明

目次1. 仲介業者モデル2. 例1. 見積コンポーネントに購入ボタンを追加する2. 親コンポーネント...