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

使用vue-virtual-scroller遇到的問題及解決

 更新時間:2024年03月21日 10:04:06   作者:言木土  
這篇文章主要介紹了使用vue-virtual-scroller遇到的問題及解決,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教

問題一

報錯Error in nextTick: “Error: Key is undefined on item (keyField is ‘userid’)”

字面上的意思,keyField的參數(shù)設(shè)置不對,導(dǎo)致找不到唯一id,需要設(shè)置填充數(shù)據(jù)的唯一key,例如你的數(shù)據(jù)格式是:

list = [
	{ userId: 1001, username: "xiaoming"},
	{ userId: 1002, username: "liming"},
	...
]

那么key-field應(yīng)該設(shè)置為userId

<RecycleScroller
      class="scroller"
      :items="list"
      :item-size="32"
      key-field="userId"
      v-slot="{ item }"
    >
      <div class="user">
        {{ item.username }}
      </div>
    </RecycleScroller>

問題二

報錯Error in v-on handler: “Error: Rendered items limit reached”

外層div應(yīng)該設(shè)置固定高度,不然虛擬列表不起作用。

<template>
  <div class="main">
    <RecycleScroller
      class="scroller"
      :items="list"
      :item-size="32"
      key-field="userId"
      v-slot="{ item }"
    >
      <div class="user">
          <div>{{ item.username }}</div>
      </div>
    </RecycleScroller>
  </div>
</template>

<style scoped>
.main {
  height: 100vh;
}
.scroller {
  height: 100%;
}
</style>

這里我固定高度設(shè)置為屏幕高度,在實際使用中,大家可以根據(jù)項目要求設(shè)置固定高度。

問題三

虛擬列表只顯示了一部分

這里可能有兩個原因引起:

  • 1、內(nèi)容的高度低于min-item-size參數(shù)
<DynamicScroller
            :items="items"
            :min-item-size="54"
            keyField="userId"
            class="scroller">
            <template v-slot="{ item, index, active }">
                <DynamicScrollerItem
                    :item="item"
                    :active="active"
                    :size-dependencies="[item.UserName]"
                    :data-index="index"
                    class="user">
                    
                </DynamicScrollerItem>
            </template>
</DynamicScroller>

<style scoped>
.user {
  min-height: 54px;//這里不能低于54
  padding: 0 12px;
  display: flex;
  align-items: center;
}
</style>

這里min-item-size設(shè)置為54,如果DynamicScrollerItem的最小高度設(shè)置低于54,可能就只會顯示開頭部分item。

  • 2、沒有引入樣式
import 'vue-virtual-scroller/dist/vue-virtual-scroller.css'

沒有引入這個樣式,也會導(dǎo)致item顯示不全。

問題四

有空白的Item

可能大家發(fā)現(xiàn),有些地方的item是空白的。

有空白item的原因就是你使用列表數(shù)據(jù)里面相鄰數(shù)據(jù)有重復(fù)的key,拿上面的例子數(shù)據(jù)來說就是連續(xù)兩個重復(fù)數(shù)據(jù)的userId是一樣的。

題外話

大家如果想用大量數(shù)據(jù)測試成果,強烈推薦fakerjs,可以創(chuàng)建大量虛假數(shù)據(jù),用于測試虛擬列表。

附上最簡單使用

1、下載依賴

npm install --save-dev @faker-js/faker

2、生成數(shù)據(jù)

import { faker } from '@faker-js/faker'

Array.from({ length: 10000 }).forEach(() => {
      this.list.push(createRandomUser())
})

createRandomUser() {
      return {
        userId: faker.datatype.uuid(),
        username: faker.internet.userName(),
      }
}

總結(jié)

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

相關(guān)文章

  • vue在圖片上傳的時候壓縮圖片

    vue在圖片上傳的時候壓縮圖片

    這篇文章主要介紹了vue在圖片上傳的時候壓縮圖片,幫助大家緩解服務(wù)器壓力,提高程序性能,感興趣的朋友可以了解下
    2020-11-11
  • vue基于input實現(xiàn)密碼的顯示與隱藏功能

    vue基于input實現(xiàn)密碼的顯示與隱藏功能

    這篇文章主要介紹了vue基于input實現(xiàn)密碼的顯示與隱藏功能,文末給大家介紹了vue?如何實現(xiàn)切換密碼的顯示與隱藏效果,本文通過實例代碼給大家介紹的非常詳細(xì),需要的朋友可以參考下
    2022-01-01
  • 在JS中如何同步修改vue中的變量

    在JS中如何同步修改vue中的變量

    這篇文章主要介紹了在JS中如何同步修改vue中的變量問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-07-07
  • Vue2.x中利用@font-size引入字體圖標(biāo)報錯的解決方法

    Vue2.x中利用@font-size引入字體圖標(biāo)報錯的解決方法

    今天小編就為大家分享一篇Vue2.x中利用@font-size引入字體圖標(biāo)報錯的解決方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-09-09
  • vue實現(xiàn)微信瀏覽器左上角返回按鈕攔截功能

    vue實現(xiàn)微信瀏覽器左上角返回按鈕攔截功能

    這篇文章主要介紹了vue實現(xiàn)微信瀏覽器左上角返回按鈕攔截功能,本文通過實例代碼相結(jié)合的形式給大家介紹的非常詳細(xì),具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-01-01
  • vue項目中一定會用到的性能優(yōu)化技巧

    vue項目中一定會用到的性能優(yōu)化技巧

    這篇文章主要為大家介紹了vue項目中一定會用到的性能優(yōu)化技巧實例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-07-07
  • Vue可左右滑動按鈕組組件使用詳解

    Vue可左右滑動按鈕組組件使用詳解

    這篇文章主要為大家詳細(xì)介紹了基于Vue可左右滑動按鈕組組件,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-02-02
  • electron踩坑之remote of undefined的解決

    electron踩坑之remote of undefined的解決

    這篇文章主要介紹了electron踩坑之remote of undefined的解決,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-10-10
  • vue的滾動條插件實現(xiàn)代碼

    vue的滾動條插件實現(xiàn)代碼

    這篇文章主要介紹了vue的滾動條插件實現(xiàn)代碼,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2019-09-09
  • 解決Vue在封裝了Axios后手動刷新頁面攔截器無效的問題

    解決Vue在封裝了Axios后手動刷新頁面攔截器無效的問題

    這篇文章主要介紹了解決VUE在封裝了Axios后手動刷新頁面攔截器無效的問題,本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價值,需要的朋友可以參考下
    2018-11-11

最新評論

深水埗区| 哈尔滨市| 海原县| 兰州市| 那坡县| 巴塘县| 长武县| 凯里市| 文昌市| 蒲城县| 锦州市| 拉孜县| 长沙县| 平定县| 皋兰县| 五峰| 嘉祥县| 虞城县| 郁南县| 山阳县| 福清市| 高要市| 揭东县| 垫江县| 邯郸县| 霍城县| 闻喜县| 清原| 泰宁县| 梓潼县| 拉孜县| 白朗县| 大足县| 上犹县| 周至县| 涞源县| 六枝特区| 六盘水市| 青岛市| 漳浦县| 乌兰察布市|