Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Reactjs 如何将其转换为react功能组件_Reactjs_React Component_React Data Grid_React Functional Component - Fatal编程技术网

Reactjs 如何将其转换为react功能组件

Reactjs 如何将其转换为react功能组件,reactjs,react-component,react-data-grid,react-functional-component,Reactjs,React Component,React Data Grid,React Functional Component,我从react数据网格中得到了这个,我已经将它转换为功能组件,但是当我更改一行的内容时,这些更改就会生效 原创的 onGridRowsUpdated = ({ fromRow, toRow, updated }) => { this.setState(state => { const rows = state.rows.slice(); for (let i = fromRow; i <= toRow; i++) { rows[i] =

我从react数据网格中得到了这个,我已经将它转换为功能组件,但是当我更改一行的内容时,这些更改就会生效

原创的

  onGridRowsUpdated = ({ fromRow, toRow, updated }) => {
    this.setState(state => {
    const rows = state.rows.slice();
    for (let i = fromRow; i <= toRow; i++) {
      rows[i] = { ...rows[i], ...updated };
    }
    return { rows };
  });
};
onGridRowsUpdated=({fromRow,toRow,updated})=>{
this.setState(state=>{
const rows=state.rows.slice();
for(让i=fromRow;i{
const rows=rows.slice();
console.log(行);
for(设i=fromRow;i
const-onGridRowsUpdated=({fromRow,toRow,updated})=>{
设置行((状态)=>{
const newRows=state.slice();
console.log(新行);

对于(让i=fromRow;i在原始代码中,您正在调用
setState
,而在第二部分中,您没有调用。您可能需要将
返回行
替换为
setRows(行)
我试过了,但运气不好,它必须将“setState”更改为功能组件中的等效项谢谢你这么好用!另外,JSX函数在7.0.0-canary15版上已从
onGridRowsUpdated
更改为
onRowsUpdate
末尾缺少
    const columns = [some data];
    let rowsIntial = [some data];
    const[rows,setRows]=useState(rowsinitial);

    const   onGridRowsUpdated = ({ fromRow, toRow, updated }) => {

        const rows = rows.slice();
       console.log(rows);
       for (let i = fromRow; i <= toRow; i++) {
          rows[i] = { ...rows[i], ...updated };
         }

      return rows;
   };
                    <ReactDataGrid
                        columns={columns}
                        rows={rows}
                        onGridRowsUpdated={onGridRowsUpdated}
                        enableCellSelect={true}
                    />
const onGridRowsUpdated = ({ fromRow, toRow, updated }) => {
    setRows((state) => {
        const newRows = state.slice();
        console.log(newRows);
        for (let i = fromRow; i <= toRow; i++) {
            newRows[i] = { ...newRows[i], ...updated };
        }
        return newRows;
    }
};