Coffeescript 大口大口大口大口大口大口大口大口大口大口大口大口大口大口大口大口大口大口大口大口大口大口大口大口大口大口大口大口大口大口大?

Coffeescript 大口大口大口大口大口大口大口大口大口大口大口大口大口大口大口大口大口大口大口大口大口大口大口大口大口大口大口大口大口大口大?,coffeescript,gulp,browserify,Coffeescript,Gulp,Browserify,如何启用源映射?我正在这样做: var browserify = require("gulp-browserify") gulp.task("compile:client", function() { gulp.src("src/client/app.coffee", { read: false }) .pipe(browserify({ debug: true // THIS DOES NOTHING :( transfor

如何启用源映射?我正在这样做:

  var browserify = require("gulp-browserify")

  gulp.task("compile:client", function() {
    gulp.src("src/client/app.coffee", {
      read: false
    })
    .pipe(browserify({
      debug: true // THIS DOES NOTHING :(
      transform: ['coffeeify'],
      extensions: ['.coffee']
    }))
    .pipe(rename('app.js'));
  });
哎哟。。。出于某种原因,“大口大口大口”浏览器上写着: 插件被列入黑名单

我不明白。。。那我该如何在我的咖啡脚本文件中使用browserify呢

UPD:哈!我错了:
debug
选项有效。它只是将源映射信息粘贴到输出javascript文件中。令人惊叹的。问题仍然悬而未决:为什么这个插件被列入黑名单

看看这里:

在这里:

更新:

我不认为这下面是“混乱”


我找到了一个解决方案,通过在web上爬行,它看起来是这样的:

var browserify = require('browserify');
var gulp = require('gulp');
var exorcist = require('exorcist');
var source = require('vinyl-source-stream');
var concat = require('gulp-concat');
var uglify = require('gulp-uglify');
var sourcemaps = require('gulp-sourcemaps'); // https://www.npmjs.org/package/gulp-sourcemaps

gulp.task('browserify', function(){
    return browserify({
            entries: ['./file1.js'],
            debug: true
        })
        .bundle()
        .pipe(exorcist('./output.js.map'))
        .pipe(source('output.js'))
        .pipe(gulp.dest('./'));
});

gulp.task('together', ['browserify'], function() {
  return gulp.src('output.js')
    .pipe(sourcemaps.init({loadMaps: true}))
      .pipe(concat('all-with-maps.js'))
      .pipe(uglify())
    .pipe(sourcemaps.write('.', {addComment: true /* the default */, sourceRoot: '/src'}))
    .pipe(gulp.dest('dist'));
});
确保您安装了最新版本的browserify(从今天起我使用5.10.0)。。您以前需要将
{debug:true}
传递给
bundle()
调用。。但它已直接移动到
browserify()


关于黑名单:人们认为最好直接使用
browserify()
,就像我们在这里做的那样。看起来不需要插件。

是的,但所有其他解决方案都很混乱。似乎很多人仍在使用该插件,我想我也会坚持使用它,直到找到更好的方法我才明白:(什么是
noscope.js
?我该如何应用于我的情况?如果
process.env.NODE\u env==“development”,我需要对我的文件进行咖啡化并添加源代码映射)
noscope是browserify的一个选项。noscope.js是您的文件名,也不重要。只要阅读文档:我正在努力寻找noscope选项的用途。您能提供建议吗?谢谢您需要阅读有关UMD()的内容才能理解。然后(复制browserify文档):“当opts.standalone为非空字符串时,将使用该名称和umd包装创建独立模块。您可以在独立全局导出中使用名称空间,使用字符串名称中的.作为分隔符。例如:'a.B.C'”
var browserify = require('browserify');
var gulp = require('gulp');
var exorcist = require('exorcist');
var source = require('vinyl-source-stream');
var concat = require('gulp-concat');
var uglify = require('gulp-uglify');
var sourcemaps = require('gulp-sourcemaps'); // https://www.npmjs.org/package/gulp-sourcemaps

gulp.task('browserify', function(){
    return browserify({
            entries: ['./file1.js'],
            debug: true
        })
        .bundle()
        .pipe(exorcist('./output.js.map'))
        .pipe(source('output.js'))
        .pipe(gulp.dest('./'));
});

gulp.task('together', ['browserify'], function() {
  return gulp.src('output.js')
    .pipe(sourcemaps.init({loadMaps: true}))
      .pipe(concat('all-with-maps.js'))
      .pipe(uglify())
    .pipe(sourcemaps.write('.', {addComment: true /* the default */, sourceRoot: '/src'}))
    .pipe(gulp.dest('dist'));
});