使用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 精粹读书笔记(1,2)
Feb 07 Javascript
JavaScript call apply使用 JavaScript对象的方法绑定到DOM事件后this指向问题
Sep 28 Javascript
jQuery插件EasyUI校验规则 validatebox验证框
Nov 29 Javascript
jquery实现的判断倒计时是否结束代码
Feb 05 Javascript
JavaScript ES6中export、import与export default的用法和区别
Mar 14 Javascript
Vuex之理解Mutations的用法实例
Apr 19 Javascript
vue中使用ueditor富文本编辑器
Feb 08 Javascript
Angular2进阶之如何避免Dom误区
Apr 02 Javascript
JavaScript中arguments和this对象用法分析
Aug 08 Javascript
详解用JS添加和删除class类名
Mar 25 Javascript
微信小程序按钮点击动画效果的实现
Sep 04 Javascript
vue项目中使用vue-layer弹框插件的方法
Mar 11 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
Windows下安装PHP单元测试环境PHPUnit图文教程
2014/10/24 PHP
PHP isset()与empty()的使用区别详解
2017/02/10 PHP
Yii1.1框架实现PHP极光推送消息通知功能
2018/09/06 PHP
Yaf框架封装的MySQL数据库操作示例
2019/03/06 PHP
Opacity.js
2007/01/22 Javascript
解决使用attachEvent函数时,this指向被绑定的元素的问题的方法
2007/08/13 Javascript
实现JavaScript中继承的三种方式
2009/10/16 Javascript
页面只能打开一次Cooike如何实现
2012/12/04 Javascript
javascript常用对话框小集
2013/09/13 Javascript
js中split和replace的用法实例
2015/02/28 Javascript
浅析AngularJs HTTP响应拦截器
2015/12/28 Javascript
jQuery实现右下角可缩放大小的层完整实例
2016/06/20 Javascript
浅析使用BootStrap TreeView插件实现灵活配置快递模板
2016/11/28 Javascript
微信小程序 scroll-view隐藏滚动条详解
2017/01/16 Javascript
jquery表单验证实例仿Toast提示效果
2017/03/03 Javascript
Angular.js中window.onload(),$(document).ready()的写法浅析
2017/09/28 Javascript
vue中路由参数传递可能会遇到的坑
2017/12/07 Javascript
Canvas实现微信红包照片效果
2018/08/21 Javascript
深入理解移动前端开发之viewport
2018/10/19 Javascript
vue 中 命名视图的用法实例详解
2019/08/14 Javascript
node.js 使用 net 模块模拟 websocket 握手进行数据传递操作示例
2020/02/11 Javascript
JavaScript 接口原理与用法实例详解
2020/05/12 Javascript
python实现可以断点续传和并发的ftp程序
2016/09/13 Python
通过PHP与Python代码对比的语法差异详解
2019/07/10 Python
python异常触发及自定义异常类解析
2019/08/06 Python
windows环境中利用celery实现简单任务队列过程解析
2019/11/29 Python
Python对Tornado请求与响应的数据处理
2020/02/12 Python
keras:model.compile损失函数的用法
2020/07/01 Python
HTML5 表单验证失败的提示语问题
2017/07/13 HTML / CSS
J2EE面试题大全
2016/08/06 面试题
国际商务专业职业生涯规划书范文
2014/01/17 职场文书
文秘个人求职信范文
2014/04/22 职场文书
研讨会通知
2015/04/27 职场文书
初中开学典礼新闻稿
2015/07/17 职场文书
小学数学教师研修感悟
2015/11/18 职场文书
Python django中如何使用restful框架
2021/06/23 Python