调试变量不适用于 gulp sourcemaps + uglify
Debugging variables not working with gulp sourcemaps + uglify
我有以下 gulp 捆绑任务 javascript:
gulp.task('js', function () {
return gulp.src(paths.js)
.pipe(sourcemaps.init())
.pipe(uglify())
.pipe(concat('bundle.min.js'))
.pipe(sourcemaps.write('./'))
.pipe(gulp.dest('dist'));
});
当我 运行 在 Chrome 开发工具中执行此操作时,找到了源映射并且断点有效,但无法调试变量。
以 angular 代码块为例:
iarApp.config(['$animateProvider', function ($animateProvider) {
$animateProvider.classNameFilter(/angular-animate/);
}]);
如果我添加一个断点来查看 $animateProvider
的值,我会得到以下结果:
但是如果我在 Uglify 中关闭变量重整:
.pipe(uglify({ mangle: false }))
然后就可以了:
所以看起来 gulp-sourcemaps 插件在 Uglify 破坏名称后无法跟进变量。
其他人能遇到同样的问题and/or知道解决方案吗?
我有以下 gulp 捆绑任务 javascript:
gulp.task('js', function () {
return gulp.src(paths.js)
.pipe(sourcemaps.init())
.pipe(uglify())
.pipe(concat('bundle.min.js'))
.pipe(sourcemaps.write('./'))
.pipe(gulp.dest('dist'));
});
当我 运行 在 Chrome 开发工具中执行此操作时,找到了源映射并且断点有效,但无法调试变量。
以 angular 代码块为例:
iarApp.config(['$animateProvider', function ($animateProvider) {
$animateProvider.classNameFilter(/angular-animate/);
}]);
如果我添加一个断点来查看 $animateProvider
的值,我会得到以下结果:
但是如果我在 Uglify 中关闭变量重整:
.pipe(uglify({ mangle: false }))
然后就可以了:
所以看起来 gulp-sourcemaps 插件在 Uglify 破坏名称后无法跟进变量。
其他人能遇到同样的问题and/or知道解决方案吗?