Javascript 使用Jqgrid和AngularS的内存泄漏
我使用AngularJS 1.3和jqgrid 4.6.0 每次我创建一个新的jqgrid并删除它时,我都会发现250Ko内存泄漏 我的网格在局部视图中,具有一个独特的控制器。 我的示波器有一个$destroy事件。 我的网格是用指令构建的 当我关闭视图但网格已存在时,我进入此事件 查看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
您是否下载了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()
。