一、问题描述
在使用Element
的InfiniteScroll
无限滚动时候出现以下错误:
TypeError: Failed to execute 'observe' on 'MutationObserver': parameter 1 is not of type 'Node'
InfiniteScroll
的更多用法element官网
二、解决办法
给需要使用 InfiniteScroll
的元素或者它的父级元素加上 overflow:auto;
属性即可。
<template> <div class="home"> <div v-infinite-scroll="loadMore" v-for="i in count" class="infinite-list" :key="i">{{ i+1 }}</div> </div> </template> <script> export default { data() { return { count:5 } }, methods: { loadMore() { // this.count+=1; console.log('加载...') } } }; </script> <style lang="scss"> .home { .infinite-list{ width: 500px; height: 40px; line-height: 40px; background: lightblue; margin:10px; overflow:auto; // 加上该属性即可。由浏览器定夺,如果内容被修剪,浏览器就会显示滚动条以便查看其余内容 } } </style>
三、注意事项
InfiniteScroll
无限滚动组件, 滚动至底部时,加载更多数据。据官网描述其基础用法:
给实现滚动加载的元素(会出现滚动条的元素)添加 v-infinite-scroll
属性,属性值是相应的加载方法名,如loadMore
,即可实现滚动到底部时触发该loadMore
方法
注意属性和css样式的设置:
- 给设置了 v-infinite-scroll的元素或者其父元素设置高度如
height:200px;
,并让其超出高度显示滚动条overflow:auto;
infinite-scroll-disabled="disabled"
,这里的disabled
是computed
里面的属性,利用其控制是否继续加载。当disabled为true的时候,该加载函数loadMore
函数将不再被触发。infinite-scroll-immediate
默认为 true,即 立即执行加载方法loadMore
,以防初始状态下内容无法撑满容器。即loadMore会先执行一次,这里设置false,是让其初始不执行,等滚动到底部时,再执行该loadMore
方法。
<template> <div class="infinite-list-wrapper"> <ul class="list" v-infinite-scroll="loadMore" infinite-scroll-disabled="disabled" infinite-scroll-immediate="false"> <li v-for="i in count" class="list-item" :key="i">{{ i }}</li> </ul> <p v-if="loading">加载中...</p> <p v-if="noMore">没有更多了</p> </div> </template> <script> export default { data() { return { count:5, loading: false }; }, computed: { noMore() { return this.count >= 20; }, disabled() { return this.loading || this.noMore; } }, methods: { loadMore() { console.log("加载...") this.loading = true; setTimeout(() => { this.count += 2; this.loading = false; }, 2000); } } }; </script> <style lang="scss"> .home { .infinite-list-wrapper{ height:200px; // 1. 指定高度 overflow: auto; // 2. 内容超过指定高度 出现滚动条 width: 500px; border:1px solid green; margin-top:120px; .list-item{ background: lightblue; margin:10px; height:30px; line-height: 30px; } } } </style>
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件!
如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
暂无“使用Element的InfiniteScroll 无限滚动组件报错的解决”评论...
RTX 5090要首发 性能要翻倍!三星展示GDDR7显存
三星在GTC上展示了专为下一代游戏GPU设计的GDDR7内存。
首次推出的GDDR7内存模块密度为16GB,每个模块容量为2GB。其速度预设为32 Gbps(PAM3),但也可以降至28 Gbps,以提高产量和初始阶段的整体性能和成本效益。
据三星表示,GDDR7内存的能效将提高20%,同时工作电压仅为1.1V,低于标准的1.2V。通过采用更新的封装材料和优化的电路设计,使得在高速运行时的发热量降低,GDDR7的热阻比GDDR6降低了70%。
更新动态
2024年12月28日
2024年12月28日
- 小骆驼-《草原狼2(蓝光CD)》[原抓WAV+CUE]
- 群星《欢迎来到我身边 电影原声专辑》[320K/MP3][105.02MB]
- 群星《欢迎来到我身边 电影原声专辑》[FLAC/分轨][480.9MB]
- 雷婷《梦里蓝天HQⅡ》 2023头版限量编号低速原抓[WAV+CUE][463M]
- 群星《2024好听新歌42》AI调整音效【WAV分轨】
- 王思雨-《思念陪着鸿雁飞》WAV
- 王思雨《喜马拉雅HQ》头版限量编号[WAV+CUE]
- 李健《无时无刻》[WAV+CUE][590M]
- 陈奕迅《酝酿》[WAV分轨][502M]
- 卓依婷《化蝶》2CD[WAV+CUE][1.1G]
- 群星《吉他王(黑胶CD)》[WAV+CUE]
- 齐秦《穿乐(穿越)》[WAV+CUE]
- 发烧珍品《数位CD音响测试-动向效果(九)》【WAV+CUE】
- 邝美云《邝美云精装歌集》[DSF][1.6G]
- 吕方《爱一回伤一回》[WAV+CUE][454M]