导航与列表双向联动组件提示TypeError: Cannot read property 'index' of undefined

导航与列表双向联动组件提示TypeError: Cannot read property 'index' of undefined

添加时间:2021-05-13 16:17:13
导航与列表双向联动组件及模板(支持app、H5、小程序)使用端口获取数据后,滑动菜单出现TypeError: Cannot read property 'index' of undefined错误提示
举报 举报
收藏

导航与列表双向联动组件及模板(支持app、H5、小程序)是uniapp下,支持导航栏超出滚动,列表内容滚动联动导航栏列表索引 ,导航点击定位对应列表内容,很好用的一款导航插件

简介

  • 支持导航栏超出滚动
  • 列表内容滚动联动导航栏列表索引
  • 导航点击定位对应列表内容

提示

  • 组件的开发用到stylus,提前安装好stylus编译插件
  • 组件模板可根据原型或业务需求进行字段和部分样式的修改
  • 关键逻辑部分进行了注释

插件展示

错误提示

TypeError: Cannot read property 'index' of undefined

错误原因:插件本事是没有问题,出现这个错误的场景是:是我通过端口获取远程的分类数据,然后跟新list数组,然后渲染页面后,滑动分类报错。原始插件没有任何报错。后来我怀疑是我整理的分类数据的问题,尝试了很久,依然报错。后来分析了源代码,找到原因。页面加载后,通过钩子行为,调用了int()方法。原始插件数据是写在data的list数组中,原始插件在调用int()方法前,list有数据,所以页面渲染没问题。而我通过端口调用,获取数据后,更新list数组数据,但紧紧只是更新了数组数据,int()方法已经执行完成了。页面渲染没问题,但是int()方法最开始渲染的时候,数据是空的,导致index为空的时间。系统给出TypeError: Cannot read property 'index' of undefined错误提示。

解决方法

1:删除钩子行为,将下面代码删除

    mounted() {
        this.$nextTick(function(){
            this.init()
        })
    }

2:通过端口获取数据

onLoad() {
	//获取首页数据
	uni.request({
		url: "你的获取分类数据的端口",
		method: "GET",
		success: (res) => {
			//判断数据获取成功
			if (res.code == 1) {
				this.list = res.data; //全部数据
				//获取列表数据,更新页面后,刷新函数
				//this.$nextTick这个方法作用是当数据被修改后使用这个方法会回调获取更新后的dom再渲染出来
				this.$nextTick(function() {
						this.init();
					})
			}
		}
	})      },    

这样在获取后数据后调用int()方法,就可以了。

友情提示:返回的数据为索引数组就行。很简单的

相关内容推荐
资源求助发帖
查看更多发帖

*

回帖描述:

*

链接类型:

*

下载链接:

密码:
发帖规则:回帖内容为会员之间的私信,普通网友无法查看。
免责声明:回帖中提供的链接内容仅供会员之间学习参考使用,获取内容后请在法律法规范围内使用。回帖提供的内容应符合法律法规要求,不得违反法律法律的要求。
站点权责:回帖内容如违反法律法规,站点有权封停账号使用权利。对用户举报的内容,站点有责任及时删除违规内容。
热点内容推荐
标题:导航与列表双向联动组件提示TypeError: Cannot read property 'index' of undefined

*

描述:
平均回复时间:3-10分钟
规则介绍:悬赏寻求论坛网友分享资源,站点对分享内容的准确性,合法性,版权等没有足够的监管能力。如果您发现资源不正确,无法使用,不符合法律法律等情况,您可以直接举报资源。站长将尽快核实您的举报,并根据情况,采取封号,退换米粒等处理。

*

回帖描述:

*

链接类型:

*

阅读权限:

*

下载链接:

密码:
发帖规则:回帖内容为会员之间的私信,普通网友无法查看。
免责声明:回帖中提供的链接内容仅供会员之间学习参考使用,获取内容后请在法律法规范围内使用。回帖提供的内容应符合法律法规要求,不得违反法律法律的要求。
站点权责:回帖内容如违反法律法规,站点有权封停账号使用权利。对用户举报的内容,站点有责任及时删除违规内容。
  • 背景波浪
  • 背景波浪
  • 波浪
  • 波浪
客服
在线咨询
周一 至 周日 9:00 ~ 22:00
QQ:1326974360
微信:juyoubuluo6688
客服热线
18205485173
工作日 9:00 ~ 18:00
微信扫码咨询
客户服务
欢迎咨询服务
咨询量较多时,请耐心等待
社群

关注公众号

获取更多资讯

扫码进群(QQ)

与更多大牛交流沟通

0.427852s