最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

使用Vant如何實現(xiàn)數(shù)據(jù)分頁,下拉加載

 更新時間:2022年06月28日 15:24:11   作者:倘若hfl  
這篇文章主要介紹了使用Vant實現(xiàn)數(shù)據(jù)分頁及下拉加載方式。具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教

Vant-ui的van-list實現(xiàn)數(shù)據(jù)分頁加載

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>vant數(shù)據(jù)分頁,下拉加載</title>
  <link rel="stylesheet"  rel="external nofollow"  />
</head>
<style>
</style>
<body>
  <div id='app'>
    <van-list class="lazy" v-model="loading" :finished="finished" finished-text="沒有更多了" @load="onLoad"
      :immediate-check="false">
      <div v-for="(item,index) in list" :key="index">{{item}}</div>
    </van-list>
  </div>
</body>
<script src="https://cdn.staticfile.org/jquery/2.1.4/jquery.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/vue@2.6/dist/vue.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/vant@2.11/lib/vant.min.js"></script>
<script>
  var Vue = new Vue({
    el: '#app',
    data: {
      list: [],
      page: 1,
      loading: false,
      finished: false,
      num: 0
    },
    created() {
      this.getList()
    },
    mounted() {
    },
    methods: {
      // 請求公共方法
      ajax(url, params, cb) {
        $.ajax({
          type: 'post',
          url: url,
          data: params,
          dataType: "json",
          success: function (response) {
            cb(response)
          }
        });
      },
      onLoad() {
        this.getList()
      },
      getList() {
        let that = this
        that.ajax('url', { kay: 'value' }, function (res) {
          if (res.errcode != 0) {
            that.$toast(res.msg)
            return false
          }
          if (that.page == 1) {
            that.list = res.data.list
          } else {
            that.list = that.list.concat(res.data.list)
          }
          that.loading = false;
          that.page++
          //最后一次請求返回的數(shù)據(jù)為空或小于10條,不在請求,finished = true
          //根據(jù)業(yè)務需求更改
          if (res.data.list.length == 0 || res.data.list == null || res.data.list.length < 10) {
            that.finished = true
            return
          }
        })
      }
    }
  })
</script>
</html>

主要三個屬性

注意:

  • v-model 每次數(shù)據(jù)加載完成要置為false
  • finished 置為false后將不再觸發(fā)下拉加載
  • immediate-check 置為false后,每次進入頁面將不會觸發(fā)load方法,防止進入頁面多次加載

vant上拉加載更多,下拉刷新

1.html

? ?<van-pull-refresh v-model="isLoading" @refresh="onRefresh">
? ? ? ? ? ? <van-list
? ? ? ? ? ? ? v-model="loading"
? ? ? ? ? ? ? :finished="finished"
? ? ? ? ? ? ? :immediate-check="false"
? ? ? ? ? ? ? finished-text="沒有更多了呦"
? ? ? ? ? ? ? @load="onLoad"
? ? ? ? ? ? >?
? ? ? ? ?
? ? ? ? ? ? </van-list>
? ? ? ? ? </van-pull-refresh>

2.js

?return {? ??
? ? ? isLoading: false,
? ? ? loading: false,? ?
? ??
? ? ? page: 1,
? ? ? limit: 10,
? ? ? finished: false,
? ? ? total: 0, // 總共的數(shù)據(jù)條數(shù)
? ? ? List: [],?
? ? }
?
? ?getHistory() {
? ? ? const historyData = {
? ? ? ? page: this.page,
? ? ? ? limit: this.limit
? ? ? }
? ? ? return new Promise((resolve, reject) => {
? ? ? ? getHistory(historyData)
? ? ? ? ? .then(res => {
? ? ? ? ? ? if (res.code === 0) {
? ? ? ? ? ? ? console.log(res, '歷史記錄')
? ? ? ? ? ? ? this.total = res.data.total
? ? ? ? ? ? ? this.finished = !res.data.hasNext
? ? ? ? ? ? ? if (res.data.list && res.data.list.length > 0) {
? ? ? ? ? ? ? ? const tempList = res.data.list
? ? ? ? ? ? ? ? // console.log(this.page)
? ? ? ? ? ? ? ? if (this.page > 1) {
? ? ? ? ? ? ? ? ? this.list = this.list.concat(tempList)
? ? ? ? ? ? ? ? } else {
? ? ? ? ? ? ? ? ? this.list = tempList // 第一次加載
? ? ? ? ? ? ? ? }
? ? ? ? ? ? ? ? this.page += 1
? ? ? ? ? ? ? } else {
? ? ? ? ? ? ? ? this.list = []
? ? ? ? ? ? ? }
? ? ? ? ? ? ? this.loading = false
? ? ? ? ? ? ? resolve()
? ? ? ? ? ? }
? ? ? ? ? })
? ? ? ? ? .catch(error => {
? ? ? ? ? ? reject(error)
? ? ? ? ? })
? ? ? })
? ? },?
?
? onLoad() {
? ? ? this.getHistory()
? ? },
? ? onRefresh() {
? ? ? this.page = 1
? ? ? setTimeout(() => {
? ? ? ? this.getHistory()
? ? ? ? Toast('刷新成功')
? ? ? ? this.isLoading = false
? ? ? }, 1000)
? ? },

以上為個人經驗,希望能給大家一個參考,也希望大家多多支持腳本之家。 

相關文章

  • vue中實現(xiàn)回車鍵登錄功能

    vue中實現(xiàn)回車鍵登錄功能

    這篇文章主要介紹了vue中實現(xiàn)回車鍵登錄功能,本文通過實例代碼給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-02-02
  • vue3通過ref獲取子組件defineExpose的數(shù)據(jù)和方法

    vue3通過ref獲取子組件defineExpose的數(shù)據(jù)和方法

    defineExpose是Vue3中新增的選項,用于向父組件暴露子組件內部的屬性和方法,通過defineExpose,子組件可以主動控制哪些屬性和方法可以被父組件訪問,本文主要介紹了vue3通過ref獲取子組件defineExpose的數(shù)據(jù)和方法,需要的朋友可以參考下
    2023-10-10
  • vue-router后臺鑒權流程實現(xiàn)

    vue-router后臺鑒權流程實現(xiàn)

    本文主要介紹了vue-router后臺鑒權流程實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2022-08-08
  • vue mvvm數(shù)據(jù)響應實現(xiàn)

    vue mvvm數(shù)據(jù)響應實現(xiàn)

    這篇文章主要介紹了vue mvvm數(shù)據(jù)響應實現(xiàn)的方法,幫助大家更好的理解和使用vue,感興趣的朋友可以了解下
    2020-11-11
  • Vue項目中vue.config.js常用配置項詳解

    Vue項目中vue.config.js常用配置項詳解

    在 Vue CLI 創(chuàng)建的項目中,vue.config.js 是核心配置文件,用于定制化構建、開發(fā)和部署流程,本文詳細解析了該文件的常用配置項,并結合代碼示例和表格說明,幫助開發(fā)者高效管理項目配置,提升開發(fā)體驗,需要的朋友可以參考下
    2025-04-04
  • Vue項目中如何引入本地第三方JS庫

    Vue項目中如何引入本地第三方JS庫

    vue中常遇到第三方js,這篇文章主要給大家介紹了關于Vue項目中如何引入本地第三方JS庫的相關資料,文中通過示例代碼介紹的非常詳細,需要的朋友可以參考下
    2023-06-06
  • VSCode前端Vue項目引入Element-ui組件三步簡單操作方法

    VSCode前端Vue項目引入Element-ui組件三步簡單操作方法

    elementui相當于一個庫,封裝好的內容,我們引入到vue項目中,就可用庫中的內容,這篇文章主要給大家介紹了關于VSCode前端Vue項目引入Element-ui組件的三步簡單操作方法,需要的朋友可以參考下
    2024-07-07
  • vue中button標簽樣式和功能禁用的寫法

    vue中button標簽樣式和功能禁用的寫法

    這篇文章主要介紹了vue中button標簽樣式和功能禁用的寫法,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-04-04
  • Vue.js的計算屬性computed詳解

    Vue.js的計算屬性computed詳解

    文章介紹了Vue.js中的計算屬性(computed properties),解釋了它們的基本概念、語法、優(yōu)勢以及應用場景,文章通過有趣的示例展示了計算屬性在不同場景下的應用,如計算全名、計算列表的總和和計算對象的屬性,感興趣的朋友一起看看吧
    2025-03-03
  • VuePress 靜態(tài)網(wǎng)站生成方法步驟

    VuePress 靜態(tài)網(wǎng)站生成方法步驟

    這篇文章主要介紹了VuePress 靜態(tài)網(wǎng)站生成方法步驟,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2019-02-02

最新評論

临澧县| 南靖县| 固原市| 当阳市| 介休市| 陆河县| 晋城| 金山区| 博客| 郧西县| 民乐县| 庄河市| 阳新县| 米泉市| 利辛县| 全州县| 镇安县| 永吉县| 防城港市| 青浦区| 措美县| 定结县| 城步| 革吉县| 吉隆县| 武鸣县| 东平县| 桐梓县| 平顶山市| 宁陕县| 双峰县| 乐清市| 五寨县| 汝城县| 枞阳县| 东乌珠穆沁旗| 教育| 华亭县| 南开区| 宝丰县| 榆林市|