多个Typescript文件编译成自包含的javascript文件

问题描述 投票:0回答:1

我知道这些问题有1000多个。我(大多数时候)都看过他们。

我发现的所有答案似乎都已过时,更改,使用已停产的NPM软件包,或者包含2年前错误报告的软件包。

我愿意使用任何任务运行器,包,导入格式等等。

我想写这样的Typescript(东西):

菲尔1:

import FileTwoClass from "./File2"
export default FileOneClass{
    fieldOne:number = 12

    doStuff(){
        FileTwoClass.importantFunction(this.fieldOne)
    }
}

文件:App.ts:

import FileOneClass from "./File1" 
class App{
    run(){
        FileOneClass.doStuff();
    }
}

let app = new App()
app.run();

并让一个taskrunner(或任何东西)吐出一个文件,该文件包含链接的Typescript文件中设置的所有依赖项。

我是以错误的方式解决这个问题,还是可以实现的?如果是这样,究竟如何? :d

谢谢!

typescript webpack gulp gruntjs
1个回答
0
投票

我想到了。如果有人来找到这个,请使用此处的指南:https://www.typescriptlang.org/docs/handbook/gulp.html

并使用“@ babel / preset-env”:“^ 7.3.1”,而不是es2015预设。

var gulp = require('gulp');
var browserify = require('browserify');
var source = require('vinyl-source-stream');
var tsify = require('tsify');
var sourcemaps = require('gulp-sourcemaps');
var buffer = require('vinyl-buffer');

gulp.task('default', function () {
    return browserify({
        basedir: '.',
        debug: true,
        entries: ['ts/app.ts'],
        cache: {},
        packageCache: {}
    })
        .plugin(tsify)
        .transform('babelify', {
            presets: ['@babel/preset-env'],
            extensions: ['.ts']
        })
        .bundle()
        .pipe(source('bundle.js'))
        .pipe(buffer())
        .pipe(sourcemaps.init({ loadMaps: true }))
        .pipe(sourcemaps.write('./'))
        .pipe(gulp.dest('dist'));
});
© www.soinside.com 2019 - 2024. All rights reserved.