输入意外结束 prelude.js

Unexpected end of input prelude.js

我正在尝试复制我在将 React 添加到现有应用程序时遇到的问题。不幸的是,目前我 运行 陷入了一个完全不同的问题,只是试图重现原始问题。

基本结构是一个由 browserify 编译的新基础模块,然后与现有的模块连接,该模块暂时引导应用程序。

var gulp = require('gulp');
var browserify = require('browserify');
var reactify = require('reactify');
var source = require('vinyl-source-stream');
var concat = require('gulp-concat');

gulp.task('default', ['browserify', 'concat']);

gulp.task('browserify', function(){
    return browserify({
        entries: ['./src/app.js'],
        transform: [["reactify", {"es6": true}]],
        extensions: ['.jsx'],
        debug: true,
        standalone: 'App'
    }).bundle()
    .pipe(source('browserifyPackage.js'))
    .pipe(gulp.dest('./oldSrc'));
})

gulp.task('concat', ['browserify'], function(){
    return gulp.src(['./oldSrc/browserifyPackage.js', './oldSrc/app.js'])
    .pipe(concat('app.js'))
    .pipe(gulp.dest('./'));
})

新模块非常简单

window.React = require('react');

module.exports = {
    TodoSection: require('./todoSection')
}

然后旧应用程序看起来像这样

_.extend(App, (function(){
    return { init: function(){
        React.render(new App.TodoSection(), document.getElementById('body'));
    }}
}))

window.addEventListener('load', function() { App.init(); }, false).

当我尝试使用这个文件时,虽然我在 browserify 中从 prelude.js 中得到了一个 "Unexpected end of line"。我没有看到明显的问题,但我显然遗漏了一些东西。

完整的示例项目可以在 Github

上找到

问题可能出在这一行末尾的句点:

window.addEventListener('load', function() { App.init(); }, false).