使用Wijmo Flex Grid绑定成功但控制台报Number expected错误
Wijmo Flex Grid 控制台持续输出"Number expected"错误排查方案
列定义与数据源类型不匹配
检查你配置的columns里标记了dataType: 'Number'的列,对应数据源字段是否真的是数值类型。比如后端返回的数字是字符串格式(像"100"而非100)、存在null/undefined或空字符串这类非数值内容,都会触发这个断言错误。
解决办法:要么把数据源对应字段转成数值类型,要么调整列的dataType为匹配类型;如果允许空值,给列加上allowNull: true配置。自定义模板/格式化函数返回非数值
要是给数值列加了cellTemplate或者formatFunction,得确认这些逻辑返回的是有效数字。比如格式化时不小心返回了字符串,或者处理空值时返回非数字内容,都会触发校验。
解决办法:保证数值列的模板或格式化函数始终返回数字类型,空值场景可返回0或null(记得配合allowNull)。排序/分组/聚合配置错误
如果给非数值列用了数值型聚合(比如aggregate: 'Sum')或数值排序逻辑,Wijmo在计算时会期望字段是数值,自然会报错。
解决办法:核对columns里的aggregate、sortComparer等配置,只给数值列用对应的数值操作。数据源字段类型隐性不匹配
有些数据看起来是数字,但实际类型是字符串(比如JSON接口返回时未转类型),Wijmo的断言校验会严格检查类型,因此报错。
解决办法:绑定数据前先转类型,示例代码:// 把price字段转为数值,空值或无效值设为0 yourDataSource.forEach(item => { item.price = !isNaN(parseFloat(item.price)) ? parseFloat(item.price) : 0; });
内容的提问来源于stack exchange,提问作者Denish Sutaria
相关产品推荐
相关产品推荐

