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 'vuex'; import Loading from './components/common/loading'; export default { name: 'app', data() { return { } }, computed: { ...mapGetters([ 'fetchLoading', ]), }, components: { Loading, } } </script> <style> #app{ width: 100%; height: 100%; } </style>
여기서 fetchLoading은 vuex에 저장된 변수입니다. store/modules/common.js에는 다음 정의가 필요합니다.
/* 此js文件用于存储公用的vuex状态 */ import api from './../../fetch/api' import * as types from './../types.js' 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: 'loading', 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('FETCH_LOADING', false) }, time) resolve(response.data) }) .catch((error) => { // 关闭 loading图片消失 store.dispatch('FETCH_LOADING', false) axiosDate = new Date() reject(error) }) }) } export default { // 组件中公共页面请求函数 commonApi (url, params) { if(stringQuery(window.location.href)) { store.dispatch('FETCH_LOADING', true); } axiosDate = new Date(); return fetch(url, params); } }
그렇습니다. 프로젝트에 데이터가 로드되면 gif 이미지가 표시되었다가 데이터가 로드되면 사라집니다.
vue.js 학습 튜토리얼을 보려면 특수 vue.js 컴포넌트 학습 튜토리얼과 Vue.js 프론트엔드 컴포넌트 학습 튜토리얼을 클릭하여 학습하세요.
더 많은 Vue 학습 튜토리얼을 보려면 특별 주제 "Vue Practical Tutorial"을 읽어보세요.
위 내용은 제가 여러분을 위해 정리한 내용입니다. 앞으로 도움이 되길 바랍니다.
관련 기사:
jQuery를 사용하여 animate.css 캡슐화(자세한 튜토리얼)
위 내용은 vue2에서 데이터 요청 표시 로딩 그래프를 구현하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

AI Hentai Generator
AI Hentai를 무료로 생성하십시오.

인기 기사

뜨거운 도구

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

뜨거운 주제











vue2와 vue3의 라이프사이클 실행 순서 차이 라이프사이클 비교 vue2의 실행 순서 beforeCreate=>created=>beforeMount=>mounted=>beforeUpdate=>updated=>beforeDestroy=>destroyed vue3의 실행 순서 setup=>onBeforeMount= >onMounted=> onBeforeUpdate=>onUpdated=>onBeforeUnmount=&g

diff 알고리즘은 동일한 수준의 트리 노드를 비교하는 효율적인 알고리즘으로, 트리를 계층별로 검색하고 탐색할 필요가 없습니다. 그렇다면 diff 알고리즘에 대해 얼마나 알고 있나요? 다음 글은 vue2의 diff 알고리즘에 대한 심층 분석을 제공할 것입니다. 도움이 되길 바랍니다!

Vue에서 데이터 요청 선택: AxiosorFetch? Vue 개발에서 데이터 요청을 처리하는 것은 매우 일반적인 작업입니다. 데이터 요청에 사용할 도구를 선택하는 것은 고려해야 할 질문입니다. Vue에서 가장 일반적인 두 가지 도구는 Axios와 Fetch입니다. 이 기사에서는 두 도구의 장단점을 비교하고 선택하는 데 도움이 되는 몇 가지 샘플 코드를 제공합니다. Axios는 브라우저와 Node.js에서 작동하는 Promise 기반 HTTP 클라이언트입니다.

프런트 엔드 개발에서는 사용자가 웹 페이지와 상호 작용하는 동안 데이터가 로드될 때까지 기다려야 하는 경우가 종종 있습니다. 이때 일반적으로 사용자에게 기다리도록 상기시키는 로딩 효과가 표시됩니다. Vue 프레임워크에서는 전역 로딩 효과를 구현하는 방법이 어렵지 않습니다. 1단계: Vue 플러그인 생성 모든 Vue 인스턴스에서 참조할 수 있는 loading이라는 Vue 플러그인을 생성할 수 있습니다. 플러그인에서는 다음 두 가지 방법을 구현해야 합니다.

Vue 프레임워크에서 일반적으로 사용되는 데이터 요청 라이브러리: Axios 상세 설명 제목: Vue 프레임워크에서 일반적으로 사용되는 데이터 요청 라이브러리: Axios 상세 설명 소개: Vue 개발에서 데이터 요청은 필수적인 부분입니다. Vue에서 일반적으로 사용되는 데이터 요청 라이브러리인 Axios는 간단하고 사용하기 쉬운 API와 강력한 기능을 갖추고 있어 프런트엔드 개발에서 선호되는 데이터 요청 도구입니다. 이 기사에서는 Axios 사용 방법과 몇 가지 일반적인 애플리케이션 시나리오를 자세히 소개하고 독자가 참조할 수 있도록 해당 코드 예제를 제공합니다. 액시오스

Vue와 Axios는 프런트엔드 데이터 요청 처리 프로세스를 최적화하기 위해 힘을 합칩니다. 프런트엔드 개발에는 종종 백엔드와의 데이터 상호 작용이 필요하며 데이터 요청 및 처리는 프런트엔드 개발의 핵심 작업 중 하나입니다. Vue.js는 널리 사용되는 프런트엔드 프레임워크이고 Axios는 Promise 기반 HTTP 라이브러리입니다. 이 두 가지를 결합하면 프런트엔드 데이터 요청 처리 프로세스를 크게 최적화할 수 있습니다. 이번 글에서는 Vue와 Axios를 함께 사용하는 방법을 소개하며, 그 예시는 다음과 같습니다. 먼저 프로젝트에 Vue와 Axios를 도입해야 합니다.

이 기사는 Vue 학습을 안내하고 Vue2 및 Vue3에서 404 인터페이스를 설정하는 방법에 대해 설명합니다. 도움이 되기를 바랍니다.

이 기사는 vue2에 대한 관련 지식을 제공합니다. 주로 vue2에서 감쇠된 풀다운 로딩 기능이 구현되는 방법에 대해 설명합니다. 관심 있는 친구는 아래를 살펴보는 것이 모든 사람에게 도움이 되기를 바랍니다.
