找回密码
 立即注册

QQ登录

只需一步,快速开始

玉置

注册会员

2

主题

6

帖子

34

积分

注册会员

积分
34
  • 62

    金币

  • 2

    主题

  • 6

    帖子

最新发帖
玉置
注册会员   /  发表于:2022-12-24 09:02  /   查看:2075  /  回复:9
本帖最后由 玉置 于 2022-12-24 13:43 编辑

wijmo grid数据量400条左右时,自定义下拉框wj-combo-box双向绑定总有个别几个绑定失败。
即使不修改该下拉框内容,提交时依然有几条记录(随机的,不固定是哪几条)的下拉框变成了其他选项。
但是数据量少时没有该问题,至少实际测试大概30条记录时,没发现该问题。
比如:下拉框内容有A,B,C,400条数据保存时,本来是A的记录被保存成了B。

代码如下:
  1. <wj-flex-grid-column [minWidth]="20" [width]="'90*'" [header]="'省份'" [binding]="'province'"
  2.                                    [isReadOnly]="true"
  3.                                    [dataMap]="provinceList" [wordWrap]=true
  4.                                    [align]="'center'">

  5.         <ng-template wjFlexGridCellTemplate cellType="Cell" let-cell="cell">
  6.           <wj-combo-box #province id="province"
  7.                         [(selectedValue)]="cell.item.province"
  8.                         [displayMemberPath]="'label'"
  9.                         [selectedValuePath]="'value'"
  10.                         (click)="comboClick(province, $event)"
  11.                         [itemsSource]="provinceList"
  12.                         [isEditable]="false"
  13.                         [dropDownCssClass]="'provinceDown'"
  14.                         style="width:100%;height:24px;"
  15.           >
  16.           </wj-combo-box>
  17.         </ng-template>
  18. </wj-flex-grid-column>
复制代码




9 个回复

倒序浏览
Richard.Ma讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2022-12-26 09:12:43
沙发
麻烦还是上传一个重现问题的demo上来,并说明一下重现步骤

另外,确认一下现在是数据量400条左右时,即使下拉框没有设置为任何数据时,最后数据也会发生变化吗?
回复 使用道具 举报
玉置
注册会员   /  发表于:2022-12-26 10:11:41
板凳
好的,这边准备一下demo。
另外发现:[(selectedValue)]这个属性放在最后的话,又正常了(至少测试了10次左右,没有再发生过)。wj-combo-box的各个属性的前后位置还会影响内部逻辑吗?不太理解。
另外,确认一下现在是数据量400条左右时,即使下拉框没有设置为任何数据时,最后数据也会发生变化吗?

答:是的,但是哪条的下拉内容被修改是随机的,并且数量也是随机的,最多时有10多条记录的省份都发生了变化,一般的话大概2,3条数据省份有变化。
回复 使用道具 举报
Richard.Ma讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2022-12-26 13:55:31
地板
wj-combo-box的各个属性的前后位置还会影响内部逻辑吗?

这个理论上不会影响的。

你还是准备一个重现问题的demo,我再帮你看一下原因
回复 使用道具 举报
玉置
注册会员   /  发表于:2022-12-26 21:28:31
5#
本帖最后由 玉置 于 2022-12-27 09:59 编辑

初始页面:

什么也不做,点击修改按钮时的数据前后比较:(左侧是初始状态)


问题总结:貌似数据初始时渲染不正确。
demo代码,请参考附件。
当然,也可能是我的用法问题。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复 使用道具 举报
Richard.Ma讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2022-12-27 11:08:32
6#
收到,我这边验证后给你回复
回复 使用道具 举报
玉置
注册会员   /  发表于:2022-12-27 20:23:35
7#
Richard.Ma 发表于 2022-12-27 11:08
收到,我这边验证后给你回复

麻烦问一下,一般预计多长时间能完成验证?1天?还是几天?
回复 使用道具 举报
Richard.Ma讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2022-12-28 10:23:18
8#
你好,问题验证确实存在,[(selectedValue)]这个属性放在前面会造成绑定错误,且由于是双向绑定还会反过来影响源数据。如果是用单向绑定的话,仅仅是渲染错误。滚动后就正常了

目前建议先把[(selectedValue)]放在最后,看起来这样是正常的。

问题会作为bug反馈给研发人员。帖子保留处理,后续bug有进展的话会在帖子中更新
回复 使用道具 举报
玉置
注册会员   /  发表于:2022-12-28 11:59:15
9#
Richard.Ma 发表于 2022-12-28 10:23
你好,问题验证确实存在,[(selectedValue)]这个属性放在前面会造成绑定错误,且由于是双向绑定还会反过来 ...

好的,多谢了。
再麻烦问一下,一般贵公司的发布周期如何?
比如这个bug,预计什么时候会放到新版本中发布。
回复 使用道具 举报
Richard.Ma讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2022-12-28 12:31:00
10#
目前一年会发布2个版本,一般bug会在下个版本修复
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部