这篇文章主要介绍了使用Element的InfiniteScroll 无限滚动组件报错的解决,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
一、问题描述
在使用Element
的InfiniteScroll
无限滚动时候出现以下错误:
TypeError: Failed to execute ‘observe’ on ‘MutationObserver’: parameter 1 is not of t本文来源[email protected]搞@^&代*@码网(ype ‘Node’
InfiniteScroll
的更多用法element官网
二、解决办法
给需要使用 InfiniteScroll
的元素或者它的父级元素加上 overflow:auto;
属性即可。
<div class="home"> <div class="infinite-list">{{ i+1 }}</div></div> .home { .infinite-list{ width: 500px; height: 40px; line-height: 40px; background: lightblue; margin:10px; overflow:auto; // 加上该属性即可。由浏览器定夺,如果内容被修剪,浏览器就会显示滚动条以便查看其余内容 } }
三、注意事项
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
方法。
<div class="infinite-list-wrapper"> <ul class="list"> <li class="list-item">{{ i }}</li></ul><p>加载中...</p><p>没有更多了</p></div> .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; } } }
以上就是使用Element的InfiniteScroll 无限滚动组件报错的解决的详细内容,更多请关注gaodaima搞代码网其它相关文章!