无法在Chrome中的babel转换文件中放置断点

时间:2016-04-21 14:46:23

标签: angularjs google-chrome ecmascript-6 babel

我在调试我的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中也出现同样的问题。

有没有人面对这个问题?

0 个答案:

没有答案