Javascript 使用Jqgrid和AngularS的内存泄漏

Javascript 使用Jqgrid和AngularS的内存泄漏,javascript,angularjs,memory-leaks,jqgrid,Javascript,Angularjs,Memory Leaks,Jqgrid,我使用AngularJS 1.3和jqgrid 4.6.0 每次我创建一个新的jqgrid并删除它时,我都会发现250Ko内存泄漏 我的网格在局部视图中,具有一个独特的控制器。 我的示波器有一个$destroy事件。 我的网格是用指令构建的 当我关闭视图但网格已存在时,我进入此事件 查看 您是否下载了grid.custom.js,这意味着您是否选中了custom复选框?如果使用table.GridUnload(),您会得到哪些结果?您是否可以尝试将URL更改为jqGrid,并测试在免费jqG

我使用AngularJS 1.3和jqgrid 4.6.0

每次我创建一个新的jqgrid并删除它时,我都会发现250Ko内存泄漏

我的网格在局部视图中,具有一个独特的控制器。 我的示波器有一个$destroy事件。 我的网格是用指令构建的

当我关闭视图但网格已存在时,我进入此事件

查看



您是否下载了grid.custom.js,这意味着您是否选中了
custom
复选框?如果使用
table.GridUnload()
,您会得到哪些结果?您是否可以尝试将URL更改为jqGrid,并测试在免费jqGrid中会得到哪些结果?请参阅关于URL。在调用
GridUnload
之前,可以尝试使用
emptyRows
清理数据。它看起来像
表[0].emptyRows()
您可以将
deepempty:true
选项添加到jqGrid,该选项更改了
emptyRows
@lordyRows:我已经有grid.custom.js(在jquery.jqGrid.js中)的行为,“自定义复选框”是什么意思?@Oleg:my table[0]/table对象没有emptyRows函数。我尝试添加deepempty:true,并从cdnjs、jsdeliver、CDN、RawGit中逐个更改jqgrid url,但结果是一样的。我的内存又泄漏了。一切都会很容易。我会提供演示,可以用来重现问题。似乎
options.id
是您使用的表的id。如果
'
已经存在,那么表的DOM元素:
$(“#”+options.id)[0]
具有
emptyRows
方法,您可以调用该方法。根据jqGrid的
deepempty:true
选项,它以不同的方式工作。您应该首先调用
$(“#”+options.id)[0].emptyRows()
,然后调用
$(“#”+options.id).GridDestroy()
。是否下载了grid.custom.js,表示是否选中了
自定义
复选框?如果使用
table.GridUnload()
,会得到哪些结果?您是否可以尝试将URL更改为jqGrid,并测试在免费jqGrid中会得到哪些结果?请参阅关于URL。在调用
GridUnload
之前,可以尝试使用
emptyRows
清理数据。它看起来像
表[0].emptyRows()
您可以将
deepempty:true
选项添加到jqGrid,该选项更改了
emptyRows
@lordyRows:我已经有grid.custom.js(在jquery.jqGrid.js中)的行为,“自定义复选框”是什么意思?@Oleg:my table[0]/table对象没有emptyRows函数。我尝试添加deepempty:true,并从cdnjs、jsdeliver、CDN、RawGit中逐个更改jqgrid url,但结果是一样的。我的内存又泄漏了。一切都会很容易。我会提供演示,可以用来重现问题。似乎
options.id
是您使用的表的id。如果
'
已经存在,那么表的DOM元素:
$(“#”+options.id)[0]
具有
emptyRows
方法,您可以调用该方法。根据jqGrid的
deepempty:true
选项,它以不同的方式工作。您应该首先调用
$(“#”+options.id)[0]。emptyRows()
,然后调用
$(“#”+options.id)。GridDestroy()