Rumah  >  Artikel  >  hujung hadapan web  >  Cara menggunakan Vue untuk melaksanakan kesan pemuatan bar kemajuan

Cara menggunakan Vue untuk melaksanakan kesan pemuatan bar kemajuan

王林
王林asal
2023-09-19 12:45:421822semak imbas

Cara menggunakan Vue untuk melaksanakan kesan pemuatan bar kemajuan

Cara menggunakan Vue untuk melaksanakan kesan pemuatan bar kemajuan

Pengenalan:
Dalam pembangunan bahagian hadapan, kesan pemuatan bar kemajuan adalah fungsi biasa dan praktikal, yang boleh digunakan untuk memaparkan muat naik fail, pemuatan data, pemuatan halaman dan jadual operasi lain. Sebagai rangka kerja JavaScript yang popular, Vue menyediakan pelbagai alatan dan komponen untuk melaksanakan kesan pemuatan bar kemajuan dengan mudah. Artikel ini akan memperkenalkan cara menggunakan Vue untuk melaksanakan kesan pemuatan bar kemajuan yang mudah dan memberikan contoh kod khusus.

1. Gambaran keseluruhan
Kesan pemuatan bar kemajuan biasanya terdiri daripada komponen bar kemajuan dan peristiwa yang mencetuskan pemuatan. Dalam Vue, anda boleh melaksanakan bar kemajuan dengan mentakrifkan komponen global dan mengawal paparan serta menyembunyikan bar kemajuan melalui kaedah dalam contoh Vue.

2. Langkah-langkah pelaksanaan

  1. Buat projek Vue dan pasang pemalam Vue Router dan ProgressBar.
  2. Perkenalkan komponen bar kemajuan dan Penghala Vue ke dalam App.vue, dan konfigurasikan komponen bar kemajuan sebagai komponen global.
  3. Tentukan pengawal hadapan global dalam fail konfigurasi penghalaan untuk mengawal paparan dan penyembunyian bar kemajuan.
  4. Tentukan kaedah dalam kaedah untuk mengawal kemajuan pemuatan bar kemajuan secara manual.
  5. Tambah butang pada halaman untuk mencetuskan pemuatan bar kemajuan melalui acara klik.

3. Demonstrasi langkah khusus

  1. Buat projek Vue dan pasang pemalam Vue Router dan ProgressBar.
    Jalankan arahan berikut:

    vue create progress-bar-demo
    cd progress-bar-demo
    npm install vue-router
    npm install vue-progressbar
  2. Perkenalkan komponen bar kemajuan dan Penghala Vue dalam App.vue, dan konfigurasikan komponen bar kemajuan sebagai komponen global.
    Tambahkan kod berikut dalam App.vue:

    <template>
      <div id="app">
        <!-- ... -->
        <router-view></router-view>
        <vue-progress-bar></vue-progress-bar>
      </div>
    </template>
      
    <script>
    import VueProgressBar from 'vue-progressbar'
      
    export default {
      name: 'App',
      components: {
        VueProgressBar
      },
      // ...
    }
    </script>
  3. Tentukan pengawal hadapan global dalam fail konfigurasi penghalaan untuk mengawal paparan dan penyembunyian bar kemajuan.
    Buat folder penghala dalam direktori src, buat fail index.js dan tambah kod berikut:

    import Vue from 'vue'
    import VueRouter from 'vue-router'
    import VueProgressBar from 'vue-progressbar'
      
    Vue.use(VueRouter)
      
    const progressBarOptions = {
      color: '#29d',
      failedColor: 'red',
      thickness: '3px',
      transition: {
        speed: '0.5s',
        opacity: '0.6s',
        termination: 300
      },
      autoRevert: true,
      location: 'top',
      inverse: false
    }
      
    const router = new VueRouter({
      mode: 'history',
      routes: [
        // ...
      ]
    })
      
    router.beforeEach((to, from, next) => {
      VueProgressBar.start()
      next()
    })
      
    router.afterEach(() => {
      Vue.nextTick(() => {
        VueProgressBar.finish()
      })
    })
      
    export default router
  4. Tentukan kaedah dalam kaedah untuk mengawal kemajuan pemuatan bar kemajuan secara manual.
    Tentukan kaedah dalam mana-mana komponen, seperti Home.vue:

    <template>
      <div>
        <h1>Welcome to Home</h1>
        <button @click="startProgress">Start Progress</button>
      </div>
    </template>
      
    <script>
    export default {
      name: 'Home',
      methods: {
        startProgress() {
          VueProgressBar.start()
          // 模拟加载进度
          setTimeout(() => {
            VueProgressBar.finish()
          }, 2000)
        }
      }
    }
    </script>
  5. Tambahkan butang pada halaman untuk mencetuskan pemuatan bar kemajuan melalui acara klik.
    Tambah butang pada mana-mana halaman, seperti Home.vue:

    <template>
      <div>
        <h1>Welcome to Home</h1>
        <button @click="startProgress">Start Progress</button>
      </div>
    </template>
      
    <script>
    export default {
      name: 'Home',
      methods: {
        startProgress() {
          VueProgressBar.start()
          // 模拟加载进度
          setTimeout(() => {
            VueProgressBar.finish()
          }, 2000)
        }
      }
    }
    </script>

4. Ringkasan
Artikel ini memperkenalkan langkah khusus tentang cara menggunakan Vue untuk melaksanakan kesan pemuatan bar kemajuan dan menyediakan contoh kod yang sepadan. Melalui komponen global, pengawal hadapan global, dan kawalan manual kemajuan pemuatan bar kemajuan, kami boleh dengan mudah melaksanakan kesan pemuatan bar kemajuan yang mudah. Saya harap artikel ini dapat membantu anda melaksanakan bar kemajuan yang memuatkan kesan khas dalam projek Vue anda, dan memudahkan anda mengembangkan dan mengoptimumkan lagi dalam pembangunan sebenar.

Atas ialah kandungan terperinci Cara menggunakan Vue untuk melaksanakan kesan pemuatan bar kemajuan. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn