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

上网查了下,意思是堆栈溢出,这个提示让我十分头疼,网上关于出现这个问题的原因有很多种,但是我没有找到和我这个一样的。到了最后,才找出来原因出在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的更多相关文章

  1. 报错:Maximum call stack size exceeded

    最后通过查看一篇别人的博客,通过对照,发现我把参数值写反了,把参数a的值写成了参数b的值.详情可以看如下博客: https://www.cnblogs.com/dunitian/p/5865725.h ...

  2. 解决Mongoose 返回的文档过大导致模板引擎art-template无法渲染的问题,错误-RangeError: Maximum call stack size exceeded

    参考:https://blog.csdn.net/qq_40659195/article/details/88411838 最近尝试用Node写一个小案例,使用到了MongoDB,使用过的人可以知道, ...

  3. 浏览器JS报错Uncaught RangeError Maximum call stack size exceeded

    JavaScript错误:Uncaught RangeError: Maximum call stack size exceeded 堆栈溢出 原因:有小类到大类的递归查询导致溢出 解决方法思想: A ...

  4. Vue -- 项目报错整理(1):RangeError: Maximum call stack size exceeded

    这几天项目运行报了个错: Uncaught RangeError: Maximum call stack size exceeded,刚开始看到 "returnNodeParameter&q ...

  5. 新下载了一个框架,然后npm install时候报错npm ERR! Maximum call stack size exceeded

    今天遇到这个npm ERR! Maximum call stack size exceeded报错 解决方案如下: 1.更新npm版本 //查看版本 npm -v //更新 npm install - ...

  6. 浏览器JS报错Uncaught RangeError: Maximum call stack size exceeded?

    JavaScript错误:Uncaught RangeError: Maximum call stack size exceeded 堆栈溢出 原因:有小类到大类的递归查询导致溢出 解决方法思想: A ...

  7. js中报错"Maximum call stack size exceeded"解决方法

    Uncaught RangeError: Maximum call stack size exceeded 错误直译过来就是“栈溢出”,出现这个错误的原因是因为我进行了递归运算,但是忘记添加判断条件, ...

  8. Uncaught RangeError: Maximum call stack size exceeded 超出最大调用值(个人解释)

    写了段jq后,报这个错,度娘未解,灵光一闪,找到原因,上代码: Html 结构: <a href="javascript:;" class="item-pic&qu ...

  9. Uncaught RangeError: Maximum call stack size exceeded 超出最大调用值

    “Uncaught RangeError: Maximum call stack size exceeded”.当运行js时出现这个报错,但你又查不到原因的时候,不要慌. 真相只有一个,那就是你的代码 ...

  10. nodeis 避免回调引起的栈溢出 Maximum call stack size exceeded

    //如果这样写,会发生栈溢出 var i = 1; function isEven() {      console.log(i++); // return isEven();        retu ...

随机推荐

  1. Patlibc———更快捷的更换libc

    起初是为了简化做pwn题目时,来回更换libc的麻烦,为了简化命令,弄了一个小脚本,可以加入到/usr/local/bin中,当作一个快捷指令 这个写在了tools库(git clone https: ...

  2. Openstack-dashboard默认配额

    创建实例不超过10个 方法一 修改配置文件 在使用openstack的过程中,默认创建的实例最多10个,这是因为配额默认实例就是10 所以我们需要修改配置文件/etc/nova/nova.conf中的 ...

  3. effective-python-14

    effective python-Item 14 list.sort函数,比较容易用的是reverse,而其中还有个参数key,默认是NONE,此时排序是按照默认比较方法排序,比如数据按照大小,字符串 ...

  4. CSIG青年科学家会议圆满举行,合合信息打造智能文档处理融合研究新范式

          近期,第十九届中国图象图形学学会青年科学家会议(简称"会议")在广州召开.会议由中国图象图形学学会(CSIG)主办,琶洲实验室.华南理工大学.中山大学.中国图象图形学学 ...

  5. SQL Server 语句日期格式查找方法

    1. SQL Server中,处理日期格式和查找特定日期格式方法示例 在SQL Server中,处理日期格式和查找特定日期格式的记录是一个常见的需求.SQL Server提供了多种函数和格式选项来处理 ...

  6. CSS & JS Effect – 用 wheel 模拟 scroll

    前言 在 用 JavaScript 实现 position sticky 文章中,我提到了用 wheel 来模拟 scroll 效果. 这篇来说说具体怎么实现,挺简单的哦. Preparation t ...

  7. ASP.NET Core – System.Text.Json

    前言 System.Text.Json 是 .NET 3.0 后推出的, 用来取代原本的 Newtonsoft. 它的特点就是快,一开始的时候很多东西不支持所以很少人用,.NET 6.0 后开始比较稳 ...

  8. VS(visual studio) C++ 封装dll,以及其隐式调用与显式调用(静态\动态)

    DLL介绍 DLL(动态链接库,Dynamic Link Library)是一种可执行文件,它包含可以在其他程序中调用的函数和数据.他是Windows操作系统中的一个重要概念,用于代码共享和模块化. ...

  9. 最好的文件管理器-dolphin

    WARN:windows没有,废话少说,直接开始 what's dolphin 长得好看 dolphin使用kde的主题管理,可以通过kde的主题商店配合kvantum manager 配制出一个好看 ...

  10. 2024年常用的Python可视化框架及开源项目

    以下是 2024 年一些较为流行的 Python 可视化框架及开源项目: Matplotlib 框架声明:是 Python 中最基础.最广泛使用的可视化库之一,用于创建各种静态.动态和交互式图表. 官 ...