Firefox Developer 调试变量在使用源映射时标记为未定义
Firefox Developer debug variables marked as undefined when using sourcemaps
我使用 Gulp、gulp-sourcemaps、Babel 和 uglify 为我的缩小 javascript 文件创建了一些源映射:
gulp.task('babel-transpile', ['clean-js'], function () {
return gulp.src([
'wwwroot/js/**/*.js',
'wwwroot/js/**/*.jsx'
])
.pipe(sourcemaps.init())
.pipe(babel())
.pipe(uglify())
.pipe(rename({
suffix: '.min'
}))
.pipe(sourcemaps.write())
.pipe(gulp.dest('wwwroot/js'));
});
我可以在浏览器上的源映射代码中放置断点,它可以正常命中。但是每当我将鼠标悬停在一个变量上时,它就会被报告为未定义。实际缩小的变量不可能,因为代码似乎 运行 没问题。
根据https://hacks.mozilla.org/2018/05/debugging-modern-web-applications/应该可以吧?难道我做错了什么?
我正在使用 Firefox Developer 72.0b5(64 位)
原来 运行 执行 uglify() 任务不会使其工作。删除该行并重新 运行 执行 gulp 任务,我可以在浏览器中调试原始代码并查看变量值。
似乎如果您使用 gulp-uglify 或 gulp-terser 运行 javascript 缩小,您将无法在调试器中查看变量。这与 chrome
中的问题相同
我使用 Gulp、gulp-sourcemaps、Babel 和 uglify 为我的缩小 javascript 文件创建了一些源映射:
gulp.task('babel-transpile', ['clean-js'], function () {
return gulp.src([
'wwwroot/js/**/*.js',
'wwwroot/js/**/*.jsx'
])
.pipe(sourcemaps.init())
.pipe(babel())
.pipe(uglify())
.pipe(rename({
suffix: '.min'
}))
.pipe(sourcemaps.write())
.pipe(gulp.dest('wwwroot/js'));
});
我可以在浏览器上的源映射代码中放置断点,它可以正常命中。但是每当我将鼠标悬停在一个变量上时,它就会被报告为未定义。实际缩小的变量不可能,因为代码似乎 运行 没问题。
根据https://hacks.mozilla.org/2018/05/debugging-modern-web-applications/应该可以吧?难道我做错了什么?
我正在使用 Firefox Developer 72.0b5(64 位)
原来 运行 执行 uglify() 任务不会使其工作。删除该行并重新 运行 执行 gulp 任务,我可以在浏览器中调试原始代码并查看变量值。
似乎如果您使用 gulp-uglify 或 gulp-terser 运行 javascript 缩小,您将无法在调试器中查看变量。这与 chrome