Module build failed: SyntaxError: Unexpected token (10:40) react fixed data table

Module build failed: SyntaxError: Unexpected token (10:40) react fixed data table

我们有一个包含此 OurController 项的 React 应用程序。 OurController 工作正常。从示例中添加以下代码会破坏整个应用程序,浏览器中不会呈现任何页面:

const TextCell = ({rowIndex, data, col, ...props}) => (
  <Cell {...props}>
    {data.getObjectAt(rowIndex)[col]}
  </Cell>
);

文件的开头是

var FixedDataTable = require('fixed-data-table');
var React = require('react');

const Table = FixedDataTable.Table;
const Column = FixedDataTable.Column;
const Cell = FixedDataTable.Cell;

const TextCell = ({rowIndex, data, col, ...props}) => (
  <Cell {...props}>
    {data.getObjectAt(rowIndex)[col]}
  </Cell>
);

class OurDataTable extends React.Component {

我一注释掉就万事大吉了,不过我还是想尽量跟着教程走

错误如

Module build failed: SyntaxError: Unexpected token (10:40)
const TextCell = ({rowIndex, data, col, {issue is here}...props}) => (

有一个箭头指向...props,好像没看懂...(箭头指向第一个点)

指南是 fixed-data-table 的这个片段:

https://github.com/facebook/fixed-data-table/blob/master/examples/ObjectDataExample.js

我知道整个文件一般都很重要,但我保证代码会按预期工作,直到添加 TextCell。我们有一些 babel 加载器,但我没有看到固定数据 table 要求更多:

var webpack = require('webpack');

module.exports = {
  //devtool: 'inline-source-map',
  entry: [
    'webpack-hot-middleware/client',
    './client/main.js'
  ],
  output: {
    path: require("path").resolve('./public'),
    filename: 'bundle.js',
    publicPath: '/'
  },
  plugins: [
    new webpack.HotModuleReplacementPlugin()
  ],
  module: {
    loaders: [
      {
        test: /\.jsx?$/,
        loader: 'babel-loader',
        exclude: /node_modules/,
        query: {
          presets: ['react', 'es2015', 'react-hmre']
        }
      }
    ]
  }
};

一个快速服务器配置类似并且正在工作(热重载等)

我们已经使用 ES6 并像

class OurDataTable extends React.Component {

等等

不确定,但我认为问题出在传播运算符 ... 上,您需要配置 Babel 才能使用 transform-object-rest-spread plugin

按照此 link 进行安装:https://babeljs.io/docs/plugins/transform-object-rest-spread/