我正在使用带有一种转换方法的 Browserify:reactify。这是我构建脚本的方式:
gulp.task('scripts', function() {
var b = null, watcher = null;
function bundle() {
return b
.on('error', function(err) { console.error(err) })
.bundle()
.pipe(source('bundle.js'))
.pipe(gulp.dest('dest/scripts'));
}
b = browserify({
debug: true,
entries: ['app/index.jsx'],
transform: [ reactify ],
extensions: [ '.jsx' ],
cache: {}, packageCache: {}, fullPaths: true
});
if (config.watch) {
b = watchify(b);
b.on('update', bundle);
}
return bundle();
});
在本地运行应用程序时,源映射是正确的,在开发工具中我可以看到原始的 jsx 文件。
当我添加另一个转换时,这个问题就开始了。然后在运行和查看开发工具时,我没有得到原始文件。相反,我在编译后得到了 jsx 文件。我尝试使用 es6ify、uglifyfy 和 envify(reactify + es6ify、reactify + uglifyfy、reactify + envify),我得到了同样的错误行为。
我对源映射配置或browserify中的错误一定有问题。
知道如何解决吗?