使用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 相关文章推荐
10个基于Jquery的幻灯片插件教程
Oct 29 Javascript
Javascript基础教程之while语句
Jan 18 Javascript
avalon js实现仿微博拖动图片排序
Aug 14 Javascript
浅谈JavaScript对象的创建方式
Jun 13 Javascript
Bootstrap前端开发案例二
Jun 17 Javascript
jQuery实现移动端手机商城购物车功能
Sep 24 Javascript
详解vue-Resource(与后端数据交互)
Jan 16 Javascript
angularJs自定义过滤器实现手机号信息隐藏的方法
Oct 08 Javascript
vue-cli 打包后提交到线上出现 &quot;Uncaught SyntaxError:Unexpected token&quot; 报错
Nov 06 Javascript
使用nvm和nrm优化node.js工作流的方法
Jan 17 Javascript
Layui 动态禁止select下拉的例子
Sep 03 Javascript
React Fragment介绍与使用详解
Nov 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
英雄试炼之肉山谷—引领RPG新潮流
2020/04/20 DOTA
PHP编程快速实现数组去重的方法详解
2017/07/22 PHP
php判断/计算闰年的方法小结【三种方法】
2019/07/06 PHP
php 实现简单的登录功能示例【基于thinkPHP框架】
2019/12/02 PHP
20个最新的jQuery插件
2012/01/13 Javascript
ASP.NET jQuery 实例11 通过使用jQuery validation插件简单实现用户登录页面验证功能
2012/02/03 Javascript
Enter回车切换输入焦点实现思路与代码兼容各大浏览器
2014/09/01 Javascript
JS实现仿京东淘宝竖排二级导航
2014/12/08 Javascript
javascript常用的方法分享
2015/07/01 Javascript
javascript实现的多个层切换效果通用函数实例
2015/07/06 Javascript
浅析jQuery移动开发中内联按钮和分组按钮的编写
2015/12/04 Javascript
mvc中form表单提交的三种方式(推荐)
2016/08/10 Javascript
Vue实现双向绑定的原理以及响应式数据的方法
2018/07/02 Javascript
JS获取今天是本月第几周、本月共几周、本月有多少天、是今年的第几周、是今年的第几天的示例代码
2018/12/05 Javascript
Vue 动态组件与 v-once 指令的实现
2019/02/12 Javascript
Vue如何实现监听组件原生事件
2020/07/03 Javascript
解决Element中el-date-picker组件不回填的情况
2020/11/07 Javascript
忘记ftp密码使用python ftplib库暴力破解密码的方法示例
2014/01/22 Python
不要用强制方法杀掉python线程
2017/02/26 Python
浅谈Python使用Bottle来提供一个简单的web服务
2017/12/27 Python
Python读写zip压缩文件的方法
2018/08/29 Python
Python 创建新文件时避免覆盖已有的同名文件的解决方法
2018/11/16 Python
Python3爬虫学习之将爬取的信息保存到本地的方法详解
2018/12/12 Python
django+echart数据动态显示的例子
2019/08/12 Python
使用python绘制温度变化雷达图
2019/10/18 Python
详解Selenium-webdriver绕开反爬虫机制的4种方法
2020/10/28 Python
瑞士图书网站:Weltbild.ch
2019/09/17 全球购物
库存图片、照片、矢量图、视频和音乐:Shutterstock
2021/02/12 全球购物
2015年学生会部门工作总结
2015/04/21 职场文书
军事博物馆观后感
2015/06/05 职场文书
小学校园广播稿
2015/08/18 职场文书
2019年干货:自我鉴定
2019/03/25 职场文书
预备党员的思想汇报,你真的会写吗?
2019/06/28 职场文书
教你用Python写一个植物大战僵尸小游戏
2021/04/25 Python
ubuntu安装jupyter并设置远程访问的实现
2022/03/31 Python
python实现对doc、txt、xls等文档的读写操作
2022/04/02 Python