Keep original typescript source maps after using browserify

前端 未结 6 1155
再見小時候
再見小時候 2020-12-13 10:23

Background: I am compiling 2 dependent TypeScript files to js, which produces also source maps (one source map per file) using tsc 1.0

I\'m using -m commonjs

6条回答
  •  [愿得一人]
    2020-12-13 11:09

    Here is my working solution:

    var settings = {
      projectName : "test"
    };    
    
    gulp.task("bundle", function() {
    
      var mainTsFilePath = "src/main.ts";
      var outputFolder   = "bundle/src/";
      var outputFileName = settings.projectName + ".min.js";
      var pkg            = require("./package.json");
    
      var banner = [
        "/**",
        " * <%= pkg.name %> v.<%= pkg.version %> - <%= pkg.description %>",
        " * Copyright (c) 2015 <%= pkg.author %>",
        " * <%= pkg.license %>",
        " */", ""
      ].join("\n");
    
      var bundler = browserify({
        debug: true,
        standalone : settings.projectName
      });
    
      // TS compiler options are in tsconfig.json file
      return bundler.add(mainTsFilePath)
                    .plugin(tsify)
                    .bundle()
                    .pipe(source(outputFileName))
                    .pipe(buffer())
                    .pipe(sourcemaps.init({ loadMaps: true }))
                    .pipe(uglify())
                    .pipe(header(banner, { pkg : pkg } ))
                    .pipe(sourcemaps.write('./'))
                    .pipe(gulp.dest(outputFolder));
    });
    

提交回复
热议问题