关于elementUI的table报错RangeErr Maximum call stack size exceeded
项目中需要做一个功能,在表格中如果存在二级列表,点击箭头之后请求后台接口,展开显示二级列表的内容。点击箭头拿到了数据,但是后台会报错如下图,且数据展示不出来

上网查了下,意思是堆栈溢出,这个提示让我十分头疼,网上关于出现这个问题的原因有很多种,但是我没有找到和我这个一样的。到了最后,才找出来原因出在table列表绑定的row-key上,因为row-key绑定的参数必须是唯一的,我绑定的是id。但是后台返回的列表中一级列表中的id和二级列表中的第二条数据的id是一样的,所以才报出了这样的错误。关于堆栈溢出的问题说完了,下面要写一下table懒加载这个功能:
表格中需要绑定row-key,lazy,load和tree-props,代码如下:
<el-table
:data="tableList"
stripe
border
:height="tableHeight.height"
:row-class-name="tableRowClassName"
tooltip-effect="light"
:header-cell-style="{background:'#f2f2f2'}"
row-key="id"
lazy
:load="queryByRuleFlowIdAndParentId"
:tree-props="{children: 'children', hasChildren: 'hasChildren'}"
v-loading="showTableLoading"
>
<el-table-column prop="name" label="规则名称" width="200" :show-overflow-tooltip="true"></el-table-column>
<el-table-column prop="ruleNum" label="规则编码" width="200" :show-overflow-tooltip="true"></el-table-column>
<el-table-column prop="systemName" label="所属规则集" width></el-table-column>
<el-table-column prop="processTypeName" label="层级"></el-table-column>
<el-table-column label="状态" width="80">
<template slot-scope="scope">
<span v-text="scope.row.statusCd == 1?'在用':'失效'"></span>
</template>
</el-table-column>
<el-table-column prop="descp" label="描述" :show-overflow-tooltip="true"></el-table-column>
<el-table-column prop label="操作" width="310">
<template slot-scope="scope">
<el-button type="text" size="mini">修改条件/参数</el-button>
<el-button type="text" size="mini" @click="newsameNode">新建同级规则</el-button>
<el-button type="text" size="mini">新建子规则</el-button>
<el-button type="text" size="mini">删除</el-button>
</template>
</el-table-column>
</el-table>
下面是对应的方法
queryByRuleFlowIdAndParentId(tree, treeNode, resolve) {
let self = this;
let data = {
ruleFlowId: 100002042,
// this.searchData.ruleFlowId
parentId: 100002066,
//tree.id
currentPage: self.currentPage,
};
let arr = [];
$ajaxRuleView.queryByRuleFlowIdAndParentId(data, (res) = > {
if (res.code == '0000') {
console.log(res.data);
if (res.data && res.data.length > 0) {
res.data.map((item, index) = > {
arr.push({
id: item.id,
name: item.name,
ruleNum: item.ruleNum,
systemName: item.systemName,
processTypeName: item.processTypeName,
statusCd: item.statusCd,
descp: item.descp,
});
});
resolve(arr);
}
}
});
}
关于elementUI的table报错RangeErr Maximum call stack size exceeded的更多相关文章
- 报错:Maximum call stack size exceeded
最后通过查看一篇别人的博客,通过对照,发现我把参数值写反了,把参数a的值写成了参数b的值.详情可以看如下博客: https://www.cnblogs.com/dunitian/p/5865725.h ...
- 解决Mongoose 返回的文档过大导致模板引擎art-template无法渲染的问题,错误-RangeError: Maximum call stack size exceeded
参考:https://blog.csdn.net/qq_40659195/article/details/88411838 最近尝试用Node写一个小案例,使用到了MongoDB,使用过的人可以知道, ...
- 浏览器JS报错Uncaught RangeError Maximum call stack size exceeded
JavaScript错误:Uncaught RangeError: Maximum call stack size exceeded 堆栈溢出 原因:有小类到大类的递归查询导致溢出 解决方法思想: A ...
- Vue -- 项目报错整理(1):RangeError: Maximum call stack size exceeded
这几天项目运行报了个错: Uncaught RangeError: Maximum call stack size exceeded,刚开始看到 "returnNodeParameter&q ...
- 新下载了一个框架,然后npm install时候报错npm ERR! Maximum call stack size exceeded
今天遇到这个npm ERR! Maximum call stack size exceeded报错 解决方案如下: 1.更新npm版本 //查看版本 npm -v //更新 npm install - ...
- 浏览器JS报错Uncaught RangeError: Maximum call stack size exceeded?
JavaScript错误:Uncaught RangeError: Maximum call stack size exceeded 堆栈溢出 原因:有小类到大类的递归查询导致溢出 解决方法思想: A ...
- js中报错"Maximum call stack size exceeded"解决方法
Uncaught RangeError: Maximum call stack size exceeded 错误直译过来就是“栈溢出”,出现这个错误的原因是因为我进行了递归运算,但是忘记添加判断条件, ...
- Uncaught RangeError: Maximum call stack size exceeded 超出最大调用值(个人解释)
写了段jq后,报这个错,度娘未解,灵光一闪,找到原因,上代码: Html 结构: <a href="javascript:;" class="item-pic&qu ...
- Uncaught RangeError: Maximum call stack size exceeded 超出最大调用值
“Uncaught RangeError: Maximum call stack size exceeded”.当运行js时出现这个报错,但你又查不到原因的时候,不要慌. 真相只有一个,那就是你的代码 ...
- nodeis 避免回调引起的栈溢出 Maximum call stack size exceeded
//如果这样写,会发生栈溢出 var i = 1; function isEven() { console.log(i++); // return isEven(); retu ...
随机推荐
- 数据库中查询含有某个emoji表情的行数据
数据库中查询含有某个emoji表情的行数据 MySQL的情况 代码如下 create table tt6(id int, name varchar(800)); insert into tt6 s ...
- 线性dp:LeetCode516 .最长回文子序列
LeetCode516 .最长回文子序列 题目叙述: 力扣题目链接(opens new window) 给你一个字符串 s ,找出其中最长的回文子序列,并返回该序列的长度. 子序列定义为:不改变剩余字 ...
- ChatGPT 教我写一个基于python程序开发的网络设备巡检功能
这几天被ChatGPT玩坏了,为什么说是被玩呢,这东西真的太强大了,我现在用的还是版本3就专业溜了,现在已经有版本4了,详细一些人工智能真的还快就会取代一大批只会CV程序员,所以你有什么理由不学习呢. ...
- Kubernetes DaemonSet 控制器(二十二)
通过该控制器的名称我们可以看出它的用法:Daemon,就是用来部署守护进程的,DaemonSet用于在每个 Kubernetes 节点中将守护进程的副本作为后台进程运行,说白了就是在每个节点部署一个 ...
- Windows应急响应-灰鸽子远控木马
目录 应急背景 木马查杀 1.查看异常连接 2.根据端口号查看对应进程文件 3.排查异常服务 4.发现启动项 开始查杀 入侵排查 1.账号排查 2.查看服务 3.查看启动项 4.查看计划任务 5.网络 ...
- foobar2000 v1.6.12 汉化版(更新于2022.10.16)
foobar2000 v1.6.12 汉化版 -----------------------[软件截图]---------------------- -----------------------[软 ...
- iOS中xib文件维护使用小结
最近一直在做项目维护,由于项目比较大,开发时间比较早,早期的很多页面都是用xib拖拽页面控件.简单的页面还好,详情页面也是拖拽搭建,项目维护成本可想而知.闲言少叙,下面说一下不是特别复杂的xib页面维 ...
- day07-数据类型及标识符
数据类型 强类型语言 要求变量的使用严格要严格符合规定,所有变量都必须先定义后才能使用 弱类型语言 java的数据类型分为两大类 基本类型(primitive type) 数值类型 整数类型 byte ...
- KubeSphere 部署向量数据库 Milvus 实战指南
作者:运维有术星主 Milvus 是一个为通用人工智能(GenAI)应用而构建的开源向量数据库.它以卓越的性能和灵活性,提供了一个强大的平台,用于存储.搜索和管理大规模的向量数据.Milvus 能够执 ...
- 用 KubeKey 快速离线部署 K8s 与 KubeSphere
作者:尹珉,KubeSphere Ambassador,KubeSphere 社区用户委员会杭州站站长 一.KubeKey 介绍 KubeKey(以下简称 KK) 是一个用于部署 Kubernetes ...