Closed canuran closed 1 year ago
感谢你的建议,我会尽快的进行评估,如果可行的话会提供相应的事件函数。
关于这个问题,可能不需要使用新的事件函数就可以解决。
有两个更新数据的方法refreshGrid
和setQuery
, 在触发数据更新时,可通过传递回调函数来处理你所遇到的问题,如:
GM.setQuery('test', {}, false, (res) => {
// 此时,渲染已经完成
// res 是接渲染时使用的数据
})
Get!确实也是一种解决方法,只不过使用起来有些绕,需要先创建空白表格,再调用内置函数去加载数据,如果能在创建时就提供回调会更简单明了,仅个人建议~
建议在初始化时增加firstLoading: false
参数, 这种模式将数据的渲染触发交给了使用者。使用者在合适的地方再调用渲染方法,如setQuery
有些场景表格列太多,我使用 ajaxSuccess 来隐藏全是空白数据的列,有两个问题 1、需要对 ajaxSuccess 的数据进行JSON解析,不能使用 getTableData 直接获取 2、此时隐藏列后,在右键菜单里显示该列被仍然勾选
在渲染完成后再隐藏列则没有问题,但由于数据是异步加载再渲染的,并不知道它什么时候渲染完成,希望通过 afterRender 事件来触发