Angularjs 如何在重新加载数据后刷新UI网格布局
我对Angular UI Grid()有问题。网格在用户单击按钮后出现的模式窗口中实现。 服务就是这样工作的:用户选择要准备的数据集并单击按钮。点击按钮后,网站向rest服务发送请求以接收数据。接收到数据后,显示带有表格的模式。列数取决于用户请求的数据 问题是,在用户更改列宽并使用此表关闭模式后,UI网格会“记住”用户留下的列宽。若用户将选择另一组我正在清理的数据GridOptions对象,并在收到数据后再次填充它。问题是行宽度保持在以前的状态。 到目前为止,我试过:Angularjs 如何在重新加载数据后刷新UI网格布局,angularjs,angular-ui-grid,ui-grid,Angularjs,Angular Ui Grid,Ui Grid,我对Angular UI Grid()有问题。网格在用户单击按钮后出现的模式窗口中实现。 服务就是这样工作的:用户选择要准备的数据集并单击按钮。点击按钮后,网站向rest服务发送请求以接收数据。接收到数据后,显示带有表格的模式。列数取决于用户请求的数据 问题是,在用户更改列宽并使用此表关闭模式后,UI网格会“记住”用户留下的列宽。若用户将选择另一组我正在清理的数据GridOptions对象,并在收到数据后再次填充它。问题是行宽度保持在以前的状态。 到目前为止,我试过: 使用APIcore.re
- 使用API
方法-在调试时,我可以看到 方法激发一些事件,但对我的网格没有影响core.refresh()
- 删除整个DOM节点,并在接收新数据的响应之前再次追加它
- 各种不同的黑客试图使用网格api中发现的许多方法——根本没有成功李>
另外,它也适用于我的另一个表,用户可以在其中锁定和隐藏列。固定/隐藏列在接收全新数据后保持隐藏/固定。而且这并不酷。一旦你将数据设置到网格,你应该调用这个-
gridApi.core.notifyDataChange( uiGridConstants.dataChange.ALL)
从文件来看
通知我们发生了在公共api中使用的数据更改
让用户在更改数据或其他事件时告诉我们
我们的表走不动了
notifyDataChange
告诉框架某个选项或columndef已更改
签出此谢谢您的回答。当我阅读文档和线程时,这应该可以工作,但不幸的是不能。除此之外,我在文档和代码中使用了:
gridApi.core.notifyDataChange(uiGridConstants.dataChange.ALL)
,该方法接受一个参数。将两个参数(如本线程中建议的)放在那里会产生错误。如果您创建一个plunkr或发布您的代码,这将有所帮助:gridOptions.columnDefs.splice(0,gridOptions.columnDefs.length)
在隐藏网格时调用。