0

我是当今技术的新手,但我计划将react-data-grid用于宠物项目。

我有点醉酒,试图理解git, npm, react, react-data-grid, babel,和webpack,javascript它的变体......所以我想我会尝试用Facebook的create-react-app生成我的第一个简单的 react-data-grid应用程序。

我在渲染过程中遇到以下故障,我被卡住了:

TypeError: undefined is not an object (评估' WEBPACK_IMPORTED_MODULE_0_react ["React"].createElement')

我下面的简单 app.js 改编自 create-react-app 生成的模板。

import { React, Component } from 'react';
import { ReactDataGrid } from 'react-data-grid';
import logo from './logo.svg';
import './App.css';

class App extends Component {
  constructor(props, context) {
    super(props, context);
    this._rows = [];
    this._columns = [];
 }

  getRows () {return this._rows;}

  render() {
    return (
          <ReactDataGrid
            columns={this._columns}
            rowGetter={this.getRows}
            rowsCount={this.state.rows.length}
            minHeight={500} />
    );
  }
}

export default App;

我在用:

  • 反应数据网格 3.0.6
  • 反应 16.2.0
  • npm 5.6
4

1 回答 1

1

很多问题。首先,您导入的方式ReactDataGrid必须没有括号。this.state其次,在您调用的未定义组件的实例化中,您必须调用您已定义的组件: this._rows. 此外,我必须安装该create-react-class软件包才能使一切正常运行,可能是因为react-data-grid. create-react-class当某些包不使用 ES6 时需要该包。

import React from 'react';
import ReactDataGrid from 'react-data-grid';
import logo from './logo.svg';
import './App.css';

class App extends React.Component {
  constructor(props, context) {
    super(props, context);
    this._rows = [];
    this._columns = [];
  }

  getRows () {
      return this._rows;
  }

  render() {
    return (
          <ReactDataGrid
            columns={this._columns}
            rowGetter={this.getRows}
            rowsCount={this._rows.length}
            minHeight={500} />
    );
  }
}

export default App;
于 2018-01-25T09:46:09.913 回答