使用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 相关文章推荐
jquery.validate使用攻略 第五步 正则验证
Jul 01 Javascript
深入理解JavaScript定时机制
Oct 29 Javascript
基于Unit PNG Fix.js有时候在ie6下不正常的解决办法
Jun 26 Javascript
jQuery实现统计复选框选中数量
Nov 24 Javascript
jQuery中text() val()和html()的区别实例详解
Jun 28 Javascript
JavaScript的==运算详解
Jul 20 Javascript
Javascript实现图片懒加载插件的方法
Oct 20 Javascript
PHP实现本地图片上传和验证功能
Feb 27 Javascript
webpack v4 从dev到prd的方法
Apr 02 Javascript
Vue中 key keep-alive的实现原理
Sep 18 Javascript
JavaScript实现多张图片放大镜效果示例【不限定图片尺寸,rem单位】
May 14 Javascript
Vue设置长时间未操作登录自动到期返回登录页
Jan 22 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常用文件操作函数汇总
2014/11/22 PHP
thinkphp中session和cookie无效的解决方法
2014/12/19 PHP
php递归实现无限分类的方法
2015/07/28 PHP
Laravel框架自定义验证过程实例分析
2019/02/01 PHP
jquery下onpropertychange事件的绑定方法
2010/08/01 Javascript
EasyUI 中 MenuButton 的使用方法
2012/07/14 Javascript
简单漂亮的js弹窗可自由拖拽且兼容大部分浏览器
2013/10/22 Javascript
禁止iframe页面的所有js脚本如alert及弹出窗口等
2014/09/03 Javascript
基于javascript实现句子翻牌网页版小游戏
2016/03/23 Javascript
在Mac OS上安装使用Node.js的项目自动化构建工具Gulp
2016/06/18 Javascript
详细谈谈AngularJS的子级作用域问题
2016/09/05 Javascript
BootStrap Validator对于隐藏域验证和程序赋值即时验证的问题浅析
2016/12/01 Javascript
angular2系列之路由转场动画的示例代码
2017/11/09 Javascript
JavaScript中Dom操作实例详解
2019/07/08 Javascript
基于layPage插件实现两种分页方式浅析
2019/07/27 Javascript
解决三元运算符 报错“SyntaxError: can''t assign to conditional expression”
2020/02/12 Javascript
多页vue应用的单页面打包方法(内含打包模式的应用)
2020/06/11 Javascript
[01:23:59]2018DOTA2亚洲邀请赛 4.1 小组赛 B组 VP vs Secret
2018/04/03 DOTA
屏蔽Django admin界面添加按钮的操作
2020/03/11 Python
python的help函数如何使用
2020/06/11 Python
利用keras使用神经网络预测销量操作
2020/07/07 Python
学习Python需要哪些工具
2020/09/04 Python
REISS英国官网:伦敦High Street最受欢迎品牌
2016/12/21 全球购物
英国户外服装品牌:Craghoppers
2019/04/25 全球购物
彪马荷兰官网:PUMA荷兰
2019/05/08 全球购物
西安启天科技有限公司网络工程师面试题笔试题
2016/06/12 面试题
搞笑爱情保证书
2014/04/29 职场文书
科技工作者先进事迹
2014/08/16 职场文书
出纳工作检讨书
2014/10/18 职场文书
数学教师个人总结
2015/02/06 职场文书
高校自主招生自荐信2015
2015/03/04 职场文书
2015年幼儿园保育工作总结
2015/05/12 职场文书
大学生安全教育心得体会
2016/01/15 职场文书
情侣餐厅的创业计划书范本!
2019/07/26 职场文书
Linux安装Nginx步骤详解
2021/03/31 Servers
pt-archiver 主键自增
2022/04/26 MySQL