Browserify, Babel 6, Gulp - Unerwartetes Token für den Spread-Operator

Ich versuche, mein Browserify / Babelify / Gulp in meinem Projekt zum Laufen zu bringen, aber der Spread-Operator wird nicht benötigt.

Ich habe diesen Fehler von meinem Gulpfile bekommen:

[SyntaxError: /Users/mboutin2/Desktop/Todo-tutorial/src/reducers/grocery-list-reducers.js: Unexpected token (16:8) while parsing file: /Users/mboutin2/Desktop/Todo-tutorial/src/reducers/grocery-list-reducers.js]

Dies ist meine gulpfile.js

var gulp = require('gulp');
var source = require('vinyl-source-stream');
var browserify = require('browserify');
var sourcemaps = require('gulp-sourcemaps');
var uglify = require('gulp-uglify');
var buffer = require('vinyl-buffer');
var babelify = require('babelify');

gulp.task('build', function () {
  return browserify({entries: './src/client/app.js', extensions: ['.js'], debug: true})
    .transform(babelify, {presets: ['es2015', 'react']})
    .bundle()
    .on('error', function (err) {
      console.error(err);
      this.emit('end');
    })
    .pipe(source('app.min.js'))
    .pipe(buffer())
    .pipe(sourcemaps.init({loadMaps: true}))
    .pipe(uglify())
    .pipe(sourcemaps.write('./'))
    .pipe(gulp.dest('./public/js'));
});

gulp.task('default', ['build']);

Ich habe versucht, eine .babelrc-Datei zu erstellen, aber es funktioniert genauso. Und mein Skript funktioniert, wenn ich den Spread-Operator lösche.

Dies ist die Datei, in der das unerwartete Token auftritt (ziemlich einfach).

import utils from '../utils/consts';

const initialState = {
  itemList: [
    {name: 'Apple', type: 'Fruit'},
    {name: 'Beef', type: 'Meat'}
  ]
};

export function groceryList(state = initialState, action = {}) {

  switch(action.type) {

    case utils.ACTIONS.ITEM_SUBMIT:
      return {
        ...state,
        itemList: [
          ...state.itemList,
          {name: action.name, type: action.itemType}
        ]
      };

    default:
      return state;

  }
}

Ich weiß nicht, was daran nicht funktioniert. Ich habe einige Probleme mit Github und der Setup-Seite auf der Babel-Website gelesen, aber ich kann nicht dafür sorgen, dass es richtig funktioniert.

Kann mir jemand zeigen, wie ich richtig damit umgehen soll? Vielen Dan

Antworten auf die Frage(6)

Ihre Antwort auf die Frage