Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/extjs/3.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数据网格自动完成编辑器不工作 import React,{Component}来自“React” 从“react数据网格”导入ReactDataGrid 从“不变性助手”导入更新 从“react data grid addons”导入{编辑器、格式化程序} const{AutoComplete,AutoCompleteEditor,DropDownEditor}=Editors 常量{DropDownFormatter}=格式化程序 const productNames=[ { id:0, 标题:“productName1”, }, { id:1, 标题:'productName2' }, ] const productNamesEditor= 常量列=[ { 键:“id”, 名称:“ID”, }, { 关键字:“产品名称”, 名称:'产品名称', 是的, 编辑:productNamesEditor, }, { 关键字:“产品数量”, 名称:“产品数量”, 是的, }, { 关键词:“产品价格”, 名称:“产品价格”, 是的, }, { 关键词:“产品光盘”, 名称:'产品光盘', 是的, }, ] 类LineItems扩展组件{ 建造师(道具){ 超级(道具) 这是。_columns=columns console.log(此列) this.state={rows:this.props.lineItems.rows} } rowGetter=(i)=>{ 返回此.state.rows[i]; }; handleGridRowsUpdated=({fromRow,toRow,updated})=>{ console.log(fromRow) console.log(已更新) //不带参数调用slice()会生成数组的副本 让rows=this.state.rows.slice(); for(让i=fromRow;i ) } } 导出默认行项目_Reactjs_React Data Grid - Fatal编程技术网

Reactjs react数据网格自动完成编辑器不工作 import React,{Component}来自“React” 从“react数据网格”导入ReactDataGrid 从“不变性助手”导入更新 从“react data grid addons”导入{编辑器、格式化程序} const{AutoComplete,AutoCompleteEditor,DropDownEditor}=Editors 常量{DropDownFormatter}=格式化程序 const productNames=[ { id:0, 标题:“productName1”, }, { id:1, 标题:'productName2' }, ] const productNamesEditor= 常量列=[ { 键:“id”, 名称:“ID”, }, { 关键字:“产品名称”, 名称:'产品名称', 是的, 编辑:productNamesEditor, }, { 关键字:“产品数量”, 名称:“产品数量”, 是的, }, { 关键词:“产品价格”, 名称:“产品价格”, 是的, }, { 关键词:“产品光盘”, 名称:'产品光盘', 是的, }, ] 类LineItems扩展组件{ 建造师(道具){ 超级(道具) 这是。_columns=columns console.log(此列) this.state={rows:this.props.lineItems.rows} } rowGetter=(i)=>{ 返回此.state.rows[i]; }; handleGridRowsUpdated=({fromRow,toRow,updated})=>{ console.log(fromRow) console.log(已更新) //不带参数调用slice()会生成数组的副本 让rows=this.state.rows.slice(); for(让i=fromRow;i ) } } 导出默认行项目

Reactjs react数据网格自动完成编辑器不工作 import React,{Component}来自“React” 从“react数据网格”导入ReactDataGrid 从“不变性助手”导入更新 从“react data grid addons”导入{编辑器、格式化程序} const{AutoComplete,AutoCompleteEditor,DropDownEditor}=Editors 常量{DropDownFormatter}=格式化程序 const productNames=[ { id:0, 标题:“productName1”, }, { id:1, 标题:'productName2' }, ] const productNamesEditor= 常量列=[ { 键:“id”, 名称:“ID”, }, { 关键字:“产品名称”, 名称:'产品名称', 是的, 编辑:productNamesEditor, }, { 关键字:“产品数量”, 名称:“产品数量”, 是的, }, { 关键词:“产品价格”, 名称:“产品价格”, 是的, }, { 关键词:“产品光盘”, 名称:'产品光盘', 是的, }, ] 类LineItems扩展组件{ 建造师(道具){ 超级(道具) 这是。_columns=columns console.log(此列) this.state={rows:this.props.lineItems.rows} } rowGetter=(i)=>{ 返回此.state.rows[i]; }; handleGridRowsUpdated=({fromRow,toRow,updated})=>{ console.log(fromRow) console.log(已更新) //不带参数调用slice()会生成数组的副本 让rows=this.state.rows.slice(); for(让i=fromRow;i ) } } 导出默认行项目,reactjs,react-data-grid,Reactjs,React Data Grid,错误:元素类型无效:应为字符串(对于内置 组件)或类/函数(用于复合组件),但得到: 未定义。您可能忘记了从文件中导出组件 它是在中定义的,或者您可能混淆了默认导入和命名导入 检查EditorContainer的渲染方法 网格渲染。如果我尝试输入/编辑已设置自动补全编辑器的单元格,则会出现上述错误。代码中的小错误: import React, {Component} from 'react' import ReactDataGrid from 'react-data-grid' import u

错误:元素类型无效:应为字符串(对于内置 组件)或类/函数(用于复合组件),但得到: 未定义。您可能忘记了从文件中导出组件 它是在中定义的,或者您可能混淆了默认导入和命名导入

检查
EditorContainer
的渲染方法


网格渲染。如果我尝试输入/编辑已设置自动补全编辑器的单元格,则会出现上述错误。

代码中的小错误:

import React, {Component} from 'react'
import ReactDataGrid from 'react-data-grid'
import update from 'immutability-helper'
import { Editors, Formatters } from 'react-data-grid-addons'

const {AutoComplete, AutoCompleteEditor, DropDownEditor} = Editors
const { DropDownFormatter } = Formatters
const productNames = [
  {
    id: 0,
    title: 'productName1',
  },
  {
    id: 1,
    title:'productName2'
  },
] 
const productNamesEditor = <AutoCompleteEditor options={productNames} />
const columns= [
  {
    key: 'id',
    name: 'ID',
  },
  {
    key: 'product_name',
    name: 'Product Name',
    editable: true,
    editor: productNamesEditor,
  },
  {
    key: 'product_qty',
    name: 'Product Qty',
    editable:true,
  },
  {
    key: 'product_rate',
    name: 'Product Rate',
    editable:true,
  },
  {
    key: 'product_disc',
    name: 'Product Disc',
    editable:true,
  },

]
class LineItems extends Component {
  constructor(props) {
    super(props)
    this._columns = columns
    console.log(this._columns)
    this.state = {rows: this.props.lineItems.rows}
  }


  rowGetter = (i) => {
    return this.state.rows[i];
  };

  handleGridRowsUpdated = ({ fromRow, toRow, updated }) => {
    console.log(fromRow)
    console.log(updated)
    // calling slice() without arguments makes a copy of array
    let rows = this.state.rows.slice();

    for (let i = fromRow; i <= toRow; i++) {
      let rowToUpdate = rows[i];
      let updatedRow = update(rowToUpdate, {$merge: updated});
      rows[i] = updatedRow;
      this.setState({ rows })
      this.props.onGridRowsUpdated(rows)


    }
  }
  render () {
    return (
      <ReactDataGrid
        ref={node => this.grid=node}
        enableCellSelect={true}
        columns={this._columns}
        rowGetter={this.rowGetter}
        rowsCount={this.state.rows.length}
        maxHeight={300}
        onGridRowsUpdated={this.handleGridRowsUpdated}

      />
    )
  }
}

export default LineItems
应该是

const {AutoComplete, AutoCompleteEditor, DropDownEditor} = Editors
const {AutoComplete: AutoCompleteEditor, DropDownEditor} = Editors