如何在重新加载数据后刷新UI-Grid布局

时间:2016-05-31 09:09:08

标签: angularjs angular-ui-grid ui-grid

我对Angular UI-Grid(http://ui-grid.info/)有疑问。网格在用户单击按钮后出现的模态窗口中实现。 服务以这种方式工作:用户选择要准备的数据集并单击按钮。点击按钮后,网站发送请求休息服务接收数据。收到数据模式后,显示表格。列数取决于用户请求的数据。

问题在于,用户使用此表更改列宽和关闭模态后,UI-Grid会记住'用户离开的列宽。如果那时用户将选择另一组数据我正在清理GridOptions对象并在收到数据后再次填充它。问题是行宽保持在先前状态。 我到目前为止尝试过:

  • 使用apis core.refresh()方法 - 在调试时我可以看到这一点 方法触发一些事件但对我的网格没有影响,
  • 删除整个DOM节点并在接收新数据的响应之前再次附加它
  • 各种不同的黑客试图使用在网格api中找到的许多方法 - 根本没有成功。

对不起,我无法在任何小提琴中重现这一点,但我很难配合我的情况。

非常感谢任何帮助。感谢

PS。它也适用于我的另一个用户可以固定和隐藏列的表。收到全新数据后,固定/隐藏列仍然隐藏/固定。它并不酷。

1 个答案:

答案 0 :(得分:1)

将数据设置为网格后,您应该调用它 -

gridApi.core.notifyDataChange( uiGridConstants.dataChange.ALL)  

来自文档,

  

通知我们已发生数据更改,在公共API中使用   让用户告诉我们他们何时更改了数据或其他事件   我们的手表无法拿起

notifyDataChange告诉框架其中一个选项或columnDefs已被更改。

结帐thread