Ich versuche, meine Browserify/Babelify/Gulp in meinem Projekt arbeiten, aber es wird nicht die Spread-Operator.Browserify, Babel 6, Gulp - Unerwarteter Token auf Spread-Operator
habe ich diesen Fehler von meinem gulpfile:
[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]
Dieses
mein gulpfile.js istvar 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 das gleiche tun. 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 in dieser nicht funktioniert, las ich einige Probleme auf Github und die Setup-Seite auf Babel Website, aber ich kann es nicht richtig funktioniert.
Kann mir jemand zeigen, wie man richtig damit umgeht? Danke
Ich habe http://babeljs.io/docs/plugins/preset-stage-2/! Vielen Dank –
@MikeBoutin loganfsmyth Könnten Sie bitte angeben, wo Sie es als voreingestellt angeben? Ich habe das gleiche Problem, obwohl ich Babelify über CLI verwende. Danke –
Via CLI benötigen Sie eine .babelrc-Datei und die Voreinstellungen sind in der Plugins-Seite auf der Website babeljs –