ホームページ ウェブフロントエンド jsチュートリアル vue2でデータリクエスト表示読み込みグラフを実装する方法

vue2でデータリクエスト表示読み込みグラフを実装する方法

Jun 23, 2018 pm 05:58 PM
loading vue2 データリクエスト

この記事では、主に vue2 でデータ リクエストを表示するための読み込み図を詳しく紹介します。興味のある方は参考にしてください。一般的なプロジェクトでは、データをリクエストするときにデータ リクエストを実行する必要があることがあります。 gif 画像は表示され、データがロードされると消えます。このために必要なのは、通常、カプセル化された axios に js イベントを記述することだけです。もちろん、最初にこのイメージを app.vue に追加する必要があります。以下の通り:

<template>
 <p id="app">
 <loading v-show="fetchLoading"></loading>
 <router-view></router-view>
 </p>
</template>

<script>
 import { mapGetters } from &#39;vuex&#39;;
 import Loading from &#39;./components/common/loading&#39;;

 export default {
 name: &#39;app&#39;,
 data() {
 return {
 }
 },
 computed: {
 ...mapGetters([
 &#39;fetchLoading&#39;,
 ]),
 },
 components: {
 Loading,
 }
 }
</script>

<style>
 #app{
 width: 100%;
 height: 100%;
 }
</style>
ログイン後にコピー

ここでの fetchLoading は vuex に格納されている変数です。 store/modules/common.js には次の定義が必要です:

/* 此js文件用于存储公用的vuex状态 */
import api from &#39;./../../fetch/api&#39;
import * as types from &#39;./../types.js&#39;
const state = {
 // 请求数据时加载状态loading
 fetchLoading: false
}
const getters = {
 // 请求数据时加载状态
 fetchLoading: state => state.fetchLoading
}
const actions = {
 // 请求数据时状态loading
 FETCH_LOADING({
 commit
 }, res) {
 commit(types.FETCH_LOADING, res)
 },
}
const mutations = {
 // 请求数据时loading
 [types.FETCH_LOADING] (state, res) {
 state.fetchLoading = res
 }
}
ログイン後にコピー

読み込みコンポーネントは次のとおりです:

<template>
 <p class="loading">
 <img src="./../../assets/main/running.gif" alt="">
 </p>
</template>

<script>
 export default {
 name: &#39;loading&#39;,
 data () {
 return {}
 },
 }
</script>
<!-- Add "scoped" attribute to limit CSS to this component only -->
<style scoped>
 .loading{
 position: fixed;
 top:0;
 left:0;
 z-index:121;
 width: 100%;
 height: 100%;
 background: rgba(0,0,0,0.3);
 display: table-cell;
 vertical-align: middle;
 text-align: center;
 }
 .loading img{
 margin:5rem auto;
 }
</style>
ログイン後にコピー

最後に、fetch/api.js にカプセル化された axios に判定読み込みイベントを記述します: 次のように

// axios的请求时间
let axiosDate = new Date()
export function fetch (url, params) {
 return new Promise((resolve, reject) => {
 axios.post(url, params)
 .then(response => {
 // 关闭 loading图片消失
 let oDate = new Date()
 let time = oDate.getTime() - axiosDate.getTime()
 if (time < 500) time = 500
 setTimeout(() => {
  store.dispatch(&#39;FETCH_LOADING&#39;, false)
 }, time)
 resolve(response.data)
 })
 .catch((error) => {
 // 关闭 loading图片消失
 store.dispatch(&#39;FETCH_LOADING&#39;, false)
 axiosDate = new Date()
 reject(error)
 })
 })
}
export default {
 // 组件中公共页面请求函数
 commonApi (url, params) {
 if(stringQuery(window.location.href)) {
 store.dispatch(&#39;FETCH_LOADING&#39;, true);
 }
 axiosDate = new Date();
 return fetch(url, params);
 }
}
ログイン後にコピー

これは実現されています。はい、プロジェクトにデータがロードされると、gif イメージが表示され、データがロードされると消えます。

vue.js 学習チュートリアルについては、特別な vue.js コンポーネント学習チュートリアルと Vue.js フロントエンド コンポーネント学習チュートリアルをクリックして学習してください。

Vue 学習チュートリアルの詳細については、特別なトピック「Vue 実践チュートリアル」を参照してください。

上記は私があなたのためにまとめたものです。関連記事:angular5を使用するためにサーバー側のレンダリング練習を実装する

vuexのリセットを実装する方法jqueryを使用してanimate.css(詳細なチュートリアル)をカプセル化するcli 設定ファイル (詳細なチュートリアル)

以上がvue2でデータリクエスト表示読み込みグラフを実装する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

vue2 と vue3 のライフサイクルの実行順序の違いは何ですか vue2 と vue3 のライフサイクルの実行順序の違いは何ですか May 16, 2023 pm 09:40 PM

vue2 と vue3 のライフサイクルの実行順序の違い ライフサイクルの比較 vue2 の実行順序 beforeCreate=>created=>beforeMount=>mounted=>beforeUpdate=>updated=>beforeDestroy=>destroyed vue3 の実行順序 setup=>onBeforeMount= >onMounted=>onBeforeUpdate=>onUpdated=>onBeforeUnmount=&g

Vue でのデータ リクエストの選択: Axios または Fetch? Vue でのデータ リクエストの選択: Axios または Fetch? Jul 17, 2023 pm 06:30 PM

Vue でのデータ リクエストの選択: AxiosorFetch? Vue 開発では、データ リクエストの処理は非常に一般的なタスクです。データリクエストにどのツールを使用するかを選択することは、考慮する必要がある問題です。 Vue で最も一般的なツールは、Axios と Fetch の 2 つです。この記事では、両方のツールの長所と短所を比較し、選択に役立つサンプル コードをいくつか示します。 Axios は、ブラウザおよび Node.js で動作する Promise ベースの HTTP クライアントです。

Vue2 diffアルゴリズムがすぐわかる(画像と文章で詳しく解説) Vue2 diffアルゴリズムがすぐわかる(画像と文章で詳しく解説) Mar 17, 2023 pm 08:23 PM

diff アルゴリズムは、同じレベルでツリー ノードを比較する効率的なアルゴリズムであり、ツリーをレイヤーごとに検索して横断する必要がなくなります。では、diff アルゴリズムについてどれくらい知っていますか?次の記事では、vue2 の差分アルゴリズムについて詳しく説明していますので、お役に立てれば幸いです。

Vueでグローバルローディングエフェクトを実装する方法 Vueでグローバルローディングエフェクトを実装する方法 Jun 11, 2023 am 09:05 AM

フロントエンド開発では、Web ページとの対話中にユーザーがデータがロードされるまで待機する必要があるシナリオがよくありますが、このとき、通常はユーザーに待機を促すためにロード効果が表示されます。 Vue フレームワークでは、グローバルローディングエフェクトの実装は難しくありませんので、その実装方法を紹介します。ステップ 1: Vue プラグインを作成する すべての Vue インスタンスで参照できる、loading という名前の Vue プラグインを作成できます。プラグインでは、次の 2 つのメソッドを実装する必要があります。

Vue2 と Vue3 で 404 インターフェイスを設定する方法について話しましょう Vue2 と Vue3 で 404 インターフェイスを設定する方法について話しましょう Feb 17, 2023 pm 02:25 PM

この記事では、Vue の学習について説明し、Vue2 および Vue3 で 404 インターフェイスを設定する方法について説明します。

Vue でグローバルな読み込みエフェクトを実装する方法 Vue でグローバルな読み込みエフェクトを実装する方法 Nov 07, 2023 am 09:18 AM

Vue でグローバル Loading エフェクトを実装する方法 Vue 開発では、グローバル Loading エフェクトを実装することが一般的な要件です。グローバルな読み込み効果により、ページが読み込まれていることをユーザーに知らせる適切なプロンプトが表示され、ユーザー エクスペリエンスが向上します。この記事では、Vue でグローバルな読み込み効果を実装する方法を紹介し、具体的なコード例を示します。グローバル Loading コンポーネントを作成する まず、グローバル Loading コンポーネントを作成する必要があります。このコンポーネントは単純なものにすることができます

Vue と Axios が連携してフロントエンド データ リクエストの処理プロセスを最適化 Vue と Axios が連携してフロントエンド データ リクエストの処理プロセスを最適化 Jul 21, 2023 am 08:09 AM

Vue と Axios は、フロントエンド データ リクエストの処理プロセスを最適化するために連携します。フロントエンド開発では、多くの場合、バックエンドとのデータ対話が必要です。データ リクエストと処理は、フロントエンド開発の中核タスクの 1 つです。 Vue.js は一般的なフロントエンド フレームワークであり、Axios は Promise ベースの HTTP ライブラリであり、この 2 つを組み合わせることで、フロントエンド データ リクエストの処理プロセスを大幅に最適化できます。この記事では、Vue と Axios を組み合わせて使用​​する方法を紹介します。例は次のとおりです。まず、Vue と Axios をプロジェクトに導入する必要があります

Vueフレームワークでよく使われるデータリクエストライブラリ:Axiosの詳細説明 Vueフレームワークでよく使われるデータリクエストライブラリ:Axiosの詳細説明 Jul 18, 2023 am 09:12 AM

Vue フレームワークでよく使われるデータ リクエスト ライブラリ: Axios 詳細説明 タイトル: Vue フレームワークでよく使われるデータ リクエスト ライブラリ: Axios 詳細説明 はじめに: Vue 開発において、データ リクエストは重要な部分です。 Axios は、Vue で一般的に使用されるデータ リクエスト ライブラリとして、シンプルで使いやすい API と強力な機能を備えており、フロントエンド開発で推奨されるデータ リクエスト ツールとなっています。この記事では、Axios の使用方法といくつかの一般的なアプリケーション シナリオを詳細に紹介し、読者の参考のために対応するコード例を示します。アクシオス

See all articles