最近用的 表格插件 Handsontable 遇到的render()无效的问题,若后来人遇到的这种问题,可参考。
问题:
初始化或load(data),一开始起作用(渲染没有问题),再次打开或切换只显示一列,点击那列或重新触发render(),也生效。
设置 autoColumnSize:true, 或者 colWidths: 150 等等皆无效。
直接用 .render() 渲染还是只渲染第一列。
分析:
本人用 display:none,来显示和隐藏。
可能重新 display:block 布局渲染时没来得及 调用 Handsontable的render方法,或者Handsontable的render()方法有延迟。
解决:
setTimeout(function(){
hotTable.render();
});
延迟调用hotTable渲染方法。
如果其他未触发方法也可参考setTimeout()方法。
重新学习setTimeout():
Javascript异步编程之setTimeout与setInterval详解分析(一)
学习:https://www.cnblogs.com/tugenhua0707/p/4083475.html