使用Element的InfiniteScroll 无限滚动组件报错的解决


Posted in Javascript onJuly 27, 2020

一、问题描述

在使用ElementInfiniteScroll 无限滚动时候出现以下错误:

TypeError: Failed to execute 'observe' on 'MutationObserver': parameter 1 is not of type 'Node'

使用Element的InfiniteScroll 无限滚动组件报错的解决

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",这里的 disabledcomputed 里面的属性,利用其控制是否继续加载。当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>

使用Element的InfiniteScroll 无限滚动组件报错的解决

使用Element的InfiniteScroll 无限滚动组件报错的解决

使用Element的InfiniteScroll 无限滚动组件报错的解决

到此这篇关于使用Element的InfiniteScroll 无限滚动组件报错的解决的文章就介绍到这了,更多相关Element InfiniteScroll无限滚动报错内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Javascript 相关文章推荐
JSON+JavaScript处理JSON的简单例子
Mar 20 Javascript
jQuery实现表头固定效果的实例代码
May 24 Javascript
禁用JavaScript控制台调试的方法
Mar 07 Javascript
angularjs实现与服务器交互分享
Jun 24 Javascript
Node.js中安全调用系统命令的方法(避免注入安全漏洞)
Dec 05 Javascript
jquery实现模拟百分比进度条渐变效果代码
Oct 29 Javascript
Bootstrap滚动监听(Scrollspy)插件详解
Apr 26 Javascript
jquery实现无刷新验证码的简单实例
May 19 Javascript
js, jQuery实现全选、反选功能
Mar 08 Javascript
基于vue2实现上拉加载功能
Nov 28 Javascript
从零开始封装自己的自定义Vue组件
Oct 09 Javascript
优雅地使用loading(推荐)
Apr 20 Javascript
Element InfiniteScroll无限滚动的具体使用方法
Jul 27 #Javascript
vue中父子组件传值,解决钩子函数mounted只运行一次的操作
Jul 27 #Javascript
Element Alert警告的具体使用方法
Jul 27 #Javascript
Element Badge标记的使用方法
Jul 27 #Javascript
谈一谈vue请求数据放在created好还是mounted里好
Jul 27 #Javascript
JS倒计时两种实现方式代码实例
Jul 27 #Javascript
解决vue页面渲染但dom没渲染的操作
Jul 27 #Javascript
You might like
比较详细PHP生成静态页面教程
2012/01/10 PHP
PHP+swoole实现简单多人在线聊天群发
2016/01/19 PHP
10个值得深思的PHP面试题
2016/11/14 PHP
php socket通信简单实现
2016/11/18 PHP
php+ajax无刷新上传图片的实现方法
2016/12/06 PHP
jQuery 使用手册(五)
2009/09/23 Javascript
jquery动态添加删除一行数据示例
2014/06/12 Javascript
JavaScript中的变量作用域介绍
2014/12/31 Javascript
JavaScript事件委托技术实例分析
2015/02/06 Javascript
JS实现选中当前菜单后高亮显示的导航条效果
2015/10/15 Javascript
jQuery中选择器的基础使用教程
2016/05/23 Javascript
JQuery在循环中绑定事件的问题详解
2016/06/02 Javascript
javascript之Array 数组对象详解
2016/06/07 Javascript
基于node.js依赖express解析post请求四种数据格式
2017/02/13 Javascript
用vue和node写的简易购物车实现
2017/04/25 Javascript
详解ElementUI之表单验证、数据绑定、路由跳转
2017/06/21 Javascript
纯js代码生成可搜索选择下拉列表的实例
2018/01/11 Javascript
mpvue小程序仿qq左滑置顶删除组件
2018/08/03 Javascript
nodejs 使用 js 模块的方法实例详解
2018/12/04 NodeJs
微信小程序实现一个简单swiper代码实例
2019/12/30 Javascript
vue动态渲染svg、添加点击事件的实现
2020/03/13 Javascript
JS实现canvas简单小画板功能
2020/06/23 Javascript
[57:18]DOTA2上海特级锦标赛主赛事日 - 1 败者组第一轮#3VP VS VG
2016/03/03 DOTA
[01:01:52]DOTA2-DPC中国联赛正赛 iG vs LBZS BO3 第一场 3月4日
2021/03/11 DOTA
python计算方程式根的方法
2015/05/07 Python
pytorch forward两个参数实例
2020/01/17 Python
python序列类型种类详解
2020/02/26 Python
python爬取网易云音乐热歌榜实例代码
2020/08/07 Python
罗德与泰勒百货官网:Lord & Taylor
2016/08/12 全球购物
John Varvatos官方网站:设计师男士时装
2017/02/08 全球购物
Kathmandu美国网站:新西兰户外运动品牌
2019/03/23 全球购物
爱国主义演讲稿
2014/05/07 职场文书
汽车检测与维修专业求职信
2014/07/04 职场文书
导游词之上海东方明珠塔
2019/09/25 职场文书
企业内部管理控制:采购授权审批制度范本
2020/01/19 职场文书
javascript条件式访问属性和箭头函数介绍
2021/11/17 Javascript