muyang1214 发表于 2023-7-31 13:37:32

wijmo表格过滤组件报错


<FlexGrid
      itemsSource={data}
      headersVisibility="Column"
      >
      {tableColumns.map(item => {
          const { header, binding, align, format, allowSorting, cssClass, width } = item || {}
          return (
            <FlexGridColumn
            key={binding}
            header={header}
            binding={binding}
            align={align}
            format={format}
            allowSorting={allowSorting}
            cssClass={cssClass}
            width={width}
            />
          )
      })}
      <wjFilter.FlexGridFilter>
      </wjFilter.FlexGridFilter>
      </FlexGrid>


当我在表格过滤框中随便输入一个值后,然后快速移开,会报错




Cannot read properties of null (reading 'offsetHeight')TypeError: Cannot read properties of null (reading 'offsetHeight')    at ValueFilterEditor._adjustWidths (http://localhost:3000/static/js/bundle.js:16402:11)    at http://localhost:3000/static/js/bundle.js:16389:9


这是什么原因?
1.如果过滤这列存在的值,是正常的不会报错
2.如果过滤这列不存在的值(就是我乱输入的),停上几秒在移开,也正常
3.就是我乱输入后立马移开,就会报错




Richard.Ma 发表于 2023-7-31 13:50:50

请上传一个重现问题的demo,我们来协助验证原因

muyang1214 发表于 2023-7-31 14:12:03

好的,demo怎么上传,是我直接发示例代码吗?

muyang1214 发表于 2023-7-31 14:22:27

import React from 'react';
import '@grapecity/wijmo.styles/wijmo.css';
import { FlexGrid } from '@grapecity/wijmo.react.grid';
import { FlexGridFilter } from "@grapecity/wijmo.react.grid.filter";

import './multiRow.scss'

function App() {
const data = [
    {
      "ID": "1",
      "Name": "hhh",
    },
    {
      "ID": "2",
      "Name": "ggg",
    },
]
return (
    <div className='multiRow'>
      <FlexGrid
      itemsSource={data}
      >
      <FlexGridFilter>
      </FlexGridFilter>
      </FlexGrid>
    </div>

);
}

const RevocableOrderForm = () => (
<App />
)

export default RevocableOrderForm;

muyang1214 发表于 2023-7-31 14:30:15

这是效果图

Richard.Ma 发表于 2023-7-31 17:59:32

如果你是看的官网在线示例,请把 在线示例的链接发上来,并说明需要修改的代码

如果是你这边自己的demo,请将完整的可以跑起来的项目发上来

总之,我需要先运行起来项目来重现你说的问题
页: [1]
查看完整版本: wijmo表格过滤组件报错