Gangz 发表于 2022-11-29 16:16:47

Grid的排序可以做到纯服务端排序,但是画面UI正常显示么

排序的数据源和排序结果都是服务端保证。但是前端排序效果的UI正常表示。可以实现么

Richard.Ma 发表于 2022-11-29 16:26:37

本帖最后由 Richard.Ma 于 2022-11-29 16:43 编辑

我没有理解你的意思,你是要服务端排序后在前端显示排序后的数据,还是说显示未排序的数据?

这个其实和前端控件没有什么关系,只是看后端返回的数据是什么前端就显示什么

另外,wijmo有提供一个odata数据接口ODataCollectionView,可以直接实现和服务端的排序,过滤,分页交互,也就是说在客户端做上述操作的话,会放在odata服务端来执行,

https://www.grapecity.com/wijmo/ ... onView/OData/purejs
https://www.grapecity.com/wijmo/ ... w.html#sortonserver

Gangz 发表于 2022-11-29 16:46:22

详细来说是这样:
①Grid点击某列,在sortedColumn事件里获取要排序的列,传给服务端。
②服务端根据排序项目和升序/降序 返回数据给前端。
③前端拿到数据正常更新itemSource,UI侧排序的效果正常显示,但是Grid前端的排序逻辑不触发。



想要实现这个效果的原因是Grid的排序规则和Oracle的排序规则不同。

Richard.Ma 发表于 2022-11-29 18:20:02

明白了,按照你目前做的,实际上web端的flexgrid确实是没有做排序的,只是应用了排序后的数据做为数据源。

按照你目前的逻辑,相当于不需要flexgrid的排序功能。只是需要点击列头的排序按钮触发排序事件,在后端排序完成更新到前端时候,这个排序图标更新为相应的上箭头或下箭头

你可以禁用wijmo的排序功能,只在点击列头后去处理点击事件,通过 formatItem事件来重新绘制列头的图标就行


Gangz 发表于 2022-11-29 19:39:03

Richard.Ma 发表于 2022-11-29 18:20
明白了,按照你目前做的,实际上web端的flexgrid确实是没有做排序的,只是应用了排序后的数据做为数据源。
...

好的谢谢。      

Richard.Ma 发表于 2022-11-30 09:16:47

不客气
页: [1]
查看完整版本: Grid的排序可以做到纯服务端排序,但是画面UI正常显示么