输入前奏的意外结束.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).

当我尝试使用此文件时,尽管我在浏览器化中从前奏中得到"意外的行尾.js。我没有看到明显的问题,但我显然错过了一些东西。

完整的示例项目可以在Github上找到

问题可能是此行末尾的句点:

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

最新更新