Rumah > hujung hadapan web > View.js > teks badan

Bagaimana untuk melaksanakan halaman dan paparan data dalam Vue

PHPz
Lepaskan: 2023-10-15 17:46:41
asal
1591 orang telah melayarinya

Bagaimana untuk melaksanakan halaman dan paparan data dalam Vue

Vue ialah rangka kerja JavaScript bahagian hadapan yang popular yang digunakan secara meluas dalam pembangunan web. Ciri dipacu data dan komponennya membolehkan pembangun memproses data dan membina antara muka pengguna interaktif dengan lebih mudah.

Dalam pembangunan sebenar, kami sering menghadapi situasi di mana sejumlah besar data perlu dipaparkan dalam halaman. Artikel ini akan memperkenalkan cara menggunakan rangka kerja Vue untuk melaksanakan halaman dan paparan data serta memberikan contoh kod khusus.

1. Persediaan
Pertama, anda perlu mengimport rangka kerja Vue ke dalam projek. Ia boleh diperkenalkan melalui CDN, atau dipasang menggunakan npm, dan kemudian diimport melalui pernyataan import.

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>Vue Pagination</title>
</head>
<body>
  <div id="app">
    <!-- 数据列表 -->
    <ul>
      <li v-for="item in currentPageData" :key="item.id">{{ item.name }}</li>
    </ul>
    <!-- 分页器 -->
    <div>
      <button @click="prevPage">上一页</button>
      <span>{{ currentPage }}</span>
      <button @click="nextPage">下一页</button>
    </div>
  </div>

  <script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
  <script>
    // 创建Vue实例
    new Vue({
      el: '#app',
      data: {
        currentPage: 1, // 当前页码
        pageSize: 10, // 每页显示的数据条数
        dataList: [], // 数据列表
      },
      computed: {
        // 计算属性,根据当前页码和每页显示的数据条数,计算当前页显示的数据
        currentPageData() {
          const start = (this.currentPage - 1) * this.pageSize;
          const end = start + this.pageSize;
          return this.dataList.slice(start, end);
        },
      },
      methods: {
        // 上一页
        prevPage() {
          if (this.currentPage > 1) {
            this.currentPage--;
          }
        },
        // 下一页
        nextPage() {
          if (this.currentPage < this.totalPages) {
            this.currentPage++;
          }
        },
      },
      created() {
        // ajax请求获取数据
        // 这里使用setTimeout模拟异步请求
        setTimeout(() => {
          this.dataList = [
            { id: 1, name: '数据1' },
            { id: 2, name: '数据2' },
            // ...
            { id: 100, name: '数据100' },
          ];
        }, 1000);
      },
    });
  </script>
</body>
</html>
Salin selepas log masuk

Kod di atas adalah contoh fungsi paging yang paling asas. Dalam contoh Vue, kami mentakrifkan beberapa data dan kaedah untuk mengawal logik halaman.

  1. Dalam atribut data, tiga pembolehubah ditakrifkan: currentPage (nombor halaman semasa), pageSize (bilangan item data dipaparkan pada setiap halaman) dan dataList (senarai data).
  2. Kira currentPageData berdasarkan currentPage dan pageSize melalui atribut yang dikira, iaitu data yang akan dipaparkan pada halaman semasa.
  3. Tentukan dua kaedah prevPage dan nextPage, yang digunakan untuk melompat ke halaman sebelumnya dan halaman seterusnya masing-masing. Di antara dua kaedah ini, buat pertimbangan terlebih dahulu untuk memastikan jumlah muka surat tidak melebihi.
  4. Dalam fungsi cangkuk yang dicipta, permintaan tak segerak disimulasikan dan data disimpan ke DataList dengan kelewatan selama 1 saat melalui pemasa setTimeout.
  5. Dalam templat, gunakan arahan v-for untuk menggelungkan data dalam currentPageData dan gunakan arahan v-bind untuk mengaitkan atribut utama.
  6. Bahagian penomboran melaksanakan fungsi "halaman sebelumnya" dan "halaman seterusnya" melalui butang dan acara mengikat, dan memaparkan nombor halaman semasa.

Kod di atas hanya melaksanakan paparan paging asas Projek sebenar mungkin memerlukan logik yang lebih kompleks, seperti melompat ke halaman tertentu, memaparkan jumlah halaman, dsb. Tetapi idea asasnya adalah sama Berdasarkan nombor halaman semasa dan bilangan data yang dipaparkan pada setiap halaman, data yang dipaparkan pada halaman semasa dikira.

Atas ialah kandungan terperinci Bagaimana untuk melaksanakan halaman dan paparan data dalam Vue. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:php.cn
Kenyataan Laman Web ini
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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!