我在调试我的babel时遇到问题,在chrome中编译了ES6
我正在构建一个简单的ES6风格角应用程序:
主要控制器:
class MainController {
constructor($timeout) {
this.timeout = $timeout;
}
onEvento() {
this.timeout(function() {
alert('hello');
},1500);
}
}
MainController.$inject = ['$timeout'];
export default MainController;
的 app.js :
import MainController from 'controllers/main.js';
angular.module('app', [])
.controller('MainController', MainController);
angular.bootstrap(document, ['app']);
gulp任务:
gulp.task("default", ['clean'], function () {
return gulp.src(['www/**/*.js'])
.pipe(sourcemaps.init({identityMap:true}))
.pipe(babel())
.pipe(sourcemaps.write("."))
.pipe(gulp.dest("www/dist"));
});
转换器工作正常,代码有效。生成源图并镀铬加载它们。
但是当我尝试在MainController的构造函数中放置断点时,Chrome不允许它。它将断点放在下面的行中("}"在这种情况下)。
我可以把方法放在方法的第一行" onEvento"并且有效,但我无法将其置于"警告"。
我也尝试过使用browserify而不是System.js,并且使用browserify,breakpoins在Firefox上完美运行(Firefox在使用System.js时不加载源图)但Chrome中也出现同样的问题。
有没有人面对这个问题?