使用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 相关文章推荐
javascript cookie操作类的实现代码小结附使用方法
Jun 02 Javascript
Javascript Object 对象学习笔记
Dec 17 Javascript
Layui table 组件的使用之初始化加载数据、数据刷新表格、传参数
Sep 11 Javascript
基于js中document.cookie全面解析
Sep 14 Javascript
jQuery实现手机号正则验证输入及自动填充空格功能
Jan 02 jQuery
在ES5与ES6环境下处理函数默认参数的实现方法
May 13 Javascript
JS实现关键词高亮显示正则匹配
Jun 22 Javascript
antd组件Upload实现自己上传的实现示例
Dec 18 Javascript
jQuery实现轮播图源码
Oct 23 jQuery
javascript设计模式 ? 迭代器模式原理与用法实例分析
Apr 17 Javascript
Vue3+elementui plus创建项目的方法
Dec 01 Vue.js
Canvas三种动态画圆实现方法说明(小结)
Apr 16 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+dbfile开发小型留言本
2006/10/09 PHP
第八节--访问方式
2006/11/16 PHP
smarty中先strip_tags过滤html标签后truncate截取文章运用
2010/10/25 PHP
php下批量挂马和批量清马代码
2011/02/27 PHP
php定义一个参数带有默认值的函数实例分析
2015/03/16 PHP
WordPress中Gravatar头像缓存到本地及相关优化的技巧
2015/12/19 PHP
基于PHP后台的Android新闻浏览客户端
2016/05/23 PHP
php页面跳转session cookie丢失导致不能登录等问题的解决方法
2016/12/12 PHP
PHP正则匹配反斜杠'\'和美元'$'的方法
2017/02/08 PHP
windows下的WAMP环境搭建图文教程(推荐)
2017/07/27 PHP
bindParam和bindValue的区别以及在Yii2中的使用详解
2018/03/12 PHP
ASP Json Parser修正版
2009/12/06 Javascript
javaScript 利用闭包模拟对象的私有属性
2011/12/29 Javascript
JavaScript调用ajax获取文本文件内容实现代码
2014/03/28 Javascript
JS、jquery实现几分钟前、几小时前、几天前等时间差显示效果的代码实例分享
2014/04/11 Javascript
JavaScript设计模式之适配器模式介绍
2014/12/28 Javascript
简介AngularJS的视图功能应用
2015/06/17 Javascript
微信开发 消息推送实现代码
2016/10/21 Javascript
小程序开发中如何使用async-await并封装公共异步请求的方法
2019/01/20 Javascript
vue百度地图 + 定位的详解
2019/05/13 Javascript
解决layui的使用以及针对select、radio等表单组件不显示的问题
2019/09/05 Javascript
小程序实现多个选项卡切换
2020/06/19 Javascript
解决vue项目,npm run build后,报路径错的问题
2020/08/13 Javascript
Python3如何解决字符编码问题详解
2017/04/23 Python
Python获取SQLite查询结果表列名的方法
2017/06/21 Python
python基础知识(一)变量与简单数据类型详解
2019/04/17 Python
Python列表(list)所有元素的同一操作解析
2019/08/01 Python
pandas 选取行和列数据的方法详解
2019/08/08 Python
python 正则表达式贪婪模式与非贪婪模式原理、用法实例分析
2019/10/14 Python
经济实惠的豪华背包和行李袋:Packs Project
2018/10/17 全球购物
幼儿园秋游活动方案
2014/01/21 职场文书
艺术学院毕业生求职信
2014/07/09 职场文书
九一八事变纪念日演讲稿
2014/09/14 职场文书
无违反计划生育证明格式
2015/06/24 职场文书
2015年七夕情人节感言
2015/08/03 职场文书
Java spring单点登录系统
2021/09/04 Java/Android