Vue実践編:画像アップロードコンポーネント開発
Vue の実践的な戦闘: 画像アップロード コンポーネントの開発
はじめに:
画像のアップロードは、Web 開発における一般的な要件の 1 つです。この記事では、Vue フレームワークを使用して単純な画像アップロード コンポーネントを開発する方法を紹介し、具体的なコード例を示します。
1. 要件分析
画像アップロード コンポーネントには次の機能が必要です:
- ユーザーはアップロードする画像を選択できます;
- アップロード ボタンをクリックしますその後、選択した画像をサーバーにアップロードします。
- アップロードの進行状況を表示し、アップロードをキャンセルする機能を提供します。
- アップロードが完了すると、アップロードが完了したことを示すプロンプトが表示されます。成功し、アップロード結果を表示するリンクが提供されます。
2. プロジェクトの構築
まず、Vue に基づいてプロジェクトを構築する必要があります。 Vue CLI を使用して作成できます。具体的な手順は次のとおりです:
- Vue CLI をインストールします:
npm install -g @vue/cli
; ## と入力します。 # コマンド ラインで プロジェクトを作成します: コマンド ラインで - vue create image-upload
と入力し、プロンプトに従って設定します;
プロジェクト ディレクトリを入力します: - cd と入力しますコマンド ラインに image-upload## を入力します。 #;
プロジェクトを開始します。コマンド ラインに
npm runserve - と入力すると、プロジェクトがローカル開発サーバー上で実行されます。
<template> <div> <input type="file" @change="handleFileChange" /> <button @click="upload">上传</button> <div v-if="uploading"> <div>{{ progress }}%</div> <button @click="cancel">取消上传</button> </div> <div v-if="uploadSuccess"> 上传成功! <a :href="resultURL" target="_blank">查看结果</a> </div> </div> </template> <script> export default { data() { return { file: null, uploading: false, progress: 0, uploadSuccess: false, resultURL: '' }; }, methods: { handleFileChange(event) { this.file = event.target.files[0]; }, upload() { this.uploading = true; // 假装上传,每秒增加10%的进度,共耗时10秒 const timer = setInterval(() => { this.progress += 10; if (this.progress >= 100) { clearInterval(timer); this.uploading = false; this.uploadSuccess = true; this.resultURL = 'http://example.com/result'; } }, 1000); }, cancel() { this.uploading = false; this.progress = 0; this.uploadSuccess = false; } } }; </script> <style scoped> /* 样式省略 */ </style>
ログイン後にコピー
<template> <div id="app"> <ImageUpload /> </div> </template> <script> import ImageUpload from "./components/ImageUpload.vue"; export default { name: "App", components: { ImageUpload } }; </script> <style> /* 样式省略 */ </style>
ログイン後にコピー4. テストと実行
- npm runserve
- 、開発サーバーを起動します;
ブラウザを開き、http://localhost:8080 にアクセスすると、コンポーネントをアップロードするためのインターフェイスが表示されます。
- 画像を選択し、アップロード ボタンをクリックすると、アップロードの進行状況とアップロード成功のプロンプトが表示されます。
- アップロードが成功したことを示すプロンプトのリンクをクリックして、アップロード結果を表示します。
- 結論:
以上が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)

ホットトピック









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

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

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

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

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

VUEマルチページ開発は、VUE.JSフレームワークを使用してアプリケーションを構築する方法です。アプリケーションは別々のページに分割されます。コードメンテナンス:アプリケーションを複数のページに分割すると、コードの管理とメンテナンスが容易になります。モジュール性:各ページは、簡単に再利用および交換するための別のモジュールとして使用できます。簡単なルーティング:ページ間のナビゲーションは、単純なルーティング構成を介して管理できます。 SEOの最適化:各ページには独自のURLがあり、SEOに役立ちます。

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

VUEの関数傍受は、指定された期間内に関数が呼び出され、パフォーマンスの問題を防ぐ回数を制限するために使用される手法です。実装方法は次のとおりです。LodashLibrary:Import {Debounce}から「Lodash」からインポート。 debounce関数を使用して、インターセプト関数を作成します。インターセプト関数を呼び出すと、制御関数は500ミリ秒でせいぜい1回呼び出されます。
