我有Angular UI-Grid(
http://ui-grid.info/)的问题.网格在用户单击按钮后出现的模态窗口中实现.
服务以这种方式工作:用户选择要准备的数据集并单击按钮.点击按钮后,网站发送请求休息服务接收数据.收到数据模式后,显示表格.列数取决于用户请求的数据.
问题是,在用户使用此表更改列宽和关闭模式后,UI-Grid会“记住”用户离开的此列宽.如果那时用户将选择另一组数据我正在清理GridOptions对象并在收到数据后再次填充它.问题是行宽保持在先前状态.
我到目前为止尝试过:
>使用apis core.refresh()方法 – 在调试时我可以看到这一点
触发某些事件但对我的网格没有影响,
>删除整个DOM节点并在接收新数据响应之前再次附加它
>各种不同的黑客试图使用在网格api中找到的许多方法 – 根本没有成功.
对不起,我无法在任何小提琴中重现这一点,但我很难配合我的情况.
任何帮助将非常感激.谢谢
PS.它也适用于我的另一个用户可以固定和隐藏列的表.收到全新数据后,固定/隐藏列仍然隐藏/固定.它并不酷.
最佳答案 一旦你将数据设置到网格,你应该调用这个 –
gridApi.core.notifyDataChange( uiGridConstants.dataChange.ALL)
从文档中,
Notifies us that a data change has occurred, used in the public api
for users to tell us when they’ve changed data or some other event
that our watches cannot pick up
notifyDataChange告诉框架其中一个选项或columnDefs已被更改.
结帐这个thread